Bạn được cho một dãy số , , ..., và tập hợp ,
, ..., các chỉ số của mảng này. Gọi
. Nói cách khác, là
một phần tử bất kỳ từ tập hợp .
Trong bài này bạn sẽ phải trả lời truy vấn có 2 dạng sau:
: Tính tổng ,
hay tổng các phần tử có vị trí thuộc tập của dãy .
: Cộng vào các phần tử của dãy có chỉ số trong tập
. Phần tử được thay bằng với
mọi .
Với mỗi truy vấn loại đầu tiên hãy in tổng đã tính.
Input
Dòng đầu tiên gồm 3 số (). Dòng thứ
hai gồm phần tử (), các
phần tử của dãy .
dòng tiếp theo, dòng thứ gồm một số nguyên dương ở đầu cho biết
số lượng phần tử của tập , theo sau bởi số nguyên dương
phân biệt
().
dòng tiếp theo, mỗi dòng có dạng hoặc . Với mọi truy
vấn có , . Các truy vấn được cho theo
thứ tự chúng cần được trả lời.
Đề đảm bảo tổng của kích thước mọi tập không quá .
Output
Sau mỗi truy vấn dạng đầu tiên hãy in tổng đã tính trên một dòng.
Sample Input 1
Copy
5 3 5
5 -5 5 1 -4
2 1 2
4 2 1 4 5
2 2 5
? 2
+ 3 4
? 1
+ 2 1
? 2
Sample Output 1
Copy
-3
4
9
Notes
Ở truy vấn đầu tiên, tập là có 4 phần tử .
Tổng của 4 phần tử có vị trí trong tập là
.
Bình luận
https://codeforces.com/problemset/problem/348/C
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.