EduBrick

D. Сумма в старой версии

3000 мс · 256 МБ · всё или ничего

Дан массив. Запросы:

  • 1 v i x — создать новую версию из версии vv, присвоив её ii-му элементу значение xx;
  • 2 v l r — вывести сумму на отрезке [l,r][l, r] в версии vv.

Формат ввода

В первой строке — числа nn и qq (1≤n,q≤2⋅1051 \le n, q \le 2 \cdot 10^5). Во второй — nn чисел (∣ai∣≤109|a_i| \le 10^9). Далее qq запросов; 1≤l≤r≤n1 \le l \le r \le n.

Формат вывода

На каждый запрос второго вида выведите сумму.

Примеры

ввод
5 4
1 2 3 4 5
2 0 1 5
1 0 3 10
2 1 1 5
2 0 2 4
вывод
15
22
9
ввод
1 1
-1000000000
2 0 1 1
вывод
-1000000000
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.