Ограничения: время – 2s/4s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Над последовательностью целых чисел выполняются следующие операции:
- r `i\ j` – записать элементы последовательности с номерами `i` по `j` в обратном порядке;
- c `i\ j\ k` – увеличить элементы последовательности с номерами `i` по `j` на `k`;
- q `i\ j` – найти сумму, минимум и максимум элементов последовательности с номерами `i` по `j`.
Первая строка ввода содержит одно целое числа – длина последовательности
`N` (`1\ ≤\ N\ ≤\ 50\ 000`). Вторая строка строка содержит начальную последовательность.
Последовательность состоит из целых чисел, не
превосходящих по модулю `1000`, разделенных пробелами.
Третья строка ввода содержит одно целое числа – длина последовательности
`Q` (`1\ ≤\ Q\ ≤\ 50\ 000`).
Следующие строки содержат `Q` запросов в формате, описанном выше. Во всех запросах `1\ ≤\ i\ ≤\ j\ ≤\ N`,
`-1000\ ≤\ k\ ≤\ 1000`.
Для каждого запроса типа q вывести одну строку, содержащую запрашиваемую сумму, минимум и максимум.
Пример ввода
5
1 2 3 4 5
4
q 1 5
r 1 3
c 4 5 6
q 3 5
Пример вывода
15 1 5
22 1 11