Given an array of
integers, and
queries, support the following operations:
1 i k
Combineconsecutive elements beginning at index
(including the element at index
) into one element in the current array. "Combining" means summing the values of the
elements into one.
2 i
Uncombine the element at indexin the current array into its original elements in the original array.
3 i k
Output the sum ofconsecutive elements beginning at index
(including the element at index
) in the current array.
. Let
be the number of elements in the current array. Subtract
from
until
is in the range
. Let
be the number of elements to the right of or at index
in the current array. Subtract
from
until
is in the range
.
Input Specification
The first line will contain two integers,
.
The second line will contain integers, the values of the original array
.
The next lines will each contain a valid query as defined above.
Output Specification
For each type query, output the answer on its own line.
Sample Input
3 9
1 3 4
1 1 2
3 1 1
3 1 2
2 1
3 2 2
3 2 1
1 2 2
1 1 2
3 10000 100000
Sample Output
4
8
7
3
8
Comments