Банк
Олімбанк прогнозує свої погодинні прибутки на майбутнє час від часу уточнюючи інформацію. Аналітики банку досліджують різні проміжки часу для яких доступний погодинний прогноз. Для кожного такого проміжку часу аналітиків цікавить, яким є найбільше середньогодинне значення прибутку на цьому проміжку, тобто відрізок часу в дві або більше годин, який повністю лежить у межах заданого проміжку, такий, що середнє арифметичне значень прибутку на даному відрізку є якомога більшим. Крім того, різних аналітиків цікавлять різні проміжки часу.
Завдання
Напишіть програму, яка за інформацією про погодинний прогноз на прибутки Олімбанку та за уточненнями до цього прогнозу відповідає на запити аналітиків банку щодо максимального середньогодинного прибутку на заданих проміжках часу.
Вхідні дані
У першому рядку вхідного файлу записано два цілих числа та () — кількість годин, на які доступний прогноз, та сумарну кількість операцій двох типів: уточнень прогнозу та запитів аналітиків.
У другому рядку міститься цілих чисел: -те число () задає початковий прогноз на -ту годину (додатні значення відповідають прибутку, від’ємні — збиткам).
Наступні рядків описують операції. Першим числом у кожному рядку записано тип операції: 1, якщо це уточнення прогнозу, або 2, якщо це запит аналітика.
У випадку операції уточнення прогнозу далі в рядку йдуть три цілих числа , , (, , ) — межі відрізка з прогнозом, на якому (включно з кінцями) треба додати до всіх значень прогнозу величину .
У випадку запиту аналітика далі в рядку йдуть два цілих числа , () — межі відрізка запиту (включно з кінцями).
Гарантується, що у вхідних даних є хоча б один запит аналітика.
Вихідні дані
У вихідний файл для кожного запиту аналітика в окремому рядку виведіть два цілих числа та — кінці відрізка (включно), на якому досягається максимальне середнє значення прибутку (має справджуватися співвідношення , де , — межі відповідного запиту). Якщо таких відрізків є кілька — виведіть будь-який з них.
Приклади
Оцінювання
Виконуються такі додаткові умови:
( балів): ;
( балів): ;