10243: Максимум на відрізку та додавання на відрізку


Відправити розв'язок

Бали: 100 (partial)
Time limit: 0.5s
Memory limit: 125M

Author:
Problem type
Allowed languages
Brain****, C, C++, Java, Pascal, Python, v8js

Реалізуйте дерево відрізків з додаванням на відрізку, та знаходженням максимуму на відрізку.

Формат вхідних даних

В першому рядку ціле число \(N\), кількість елементів масиву (\(1 \le N \le 10^5\)).
В другому рядку елементи масиву. (\(0 \le Ai \le 10^5\))
В третьому рядку вводиться число \(K\) - кількість запитів (\(1 \le K \le 3*10^4\))
В кожному з наступних \(K\) рядків міститься запит.
Спочатку вводиться одна літера, вид запиту (m — знайти максимум на відрізку, a — збільшити всі елементи на відрізку).
За літерою m вводяться два числа — ліва та права границя відрізка.
За літерою a вводяться три числа — ліва та права границя відрізка, та число value яке треба додати усім елементам даного відрізка.

Формат вихідних даних

Для кожного запиту типу m виведіть через пробіл - максимум на відрізку

Приклад вхідних даних

5
2 4 3 1 5
5
m 1 3
a 2 4 100
m 1 3
a 5 5 10
m 1 5

Приклад вихідних даних

4 104 104

Коментарі

Ще немає коментарів.