Сложность: 58%
Сезон Красноярской Летней Школы подходит к концу, впереди дискотека предпоследнего дня. Каждый летнешкольник мечтает сесть за диджейский пульт на этом мероприятии - и, кажется, вам улыбнулась удача!
Пока вы готовили плейлист на вечер, вы узнали, что у каждого трека есть целых три целочисленных параметра: (битрейт), (удары в минуту) и (насколько трек напоминает hardbass). Из этих параметров можно вычислить, насколько трек крут, по формуле: Все параметры могут принимать значение от до .
Разобравшись с этими параметрами и составив наконец плейлист из треков, вы и не заметили, к вам выстроилась очередь из человек - и у каждого к вам есть важная просьба. Просьбы делятся на два типа:
put i a b c
- поставить на позицию трек с параметрами , и .best l r
- узнать крутость самого крутого трека в диапазоне от трека на позиции до трека на позиции включительно. (номера треков считаются с единицы; нужно учитывать изменения, сделанные по просьбе типа put
).Чтобы вас не сместили с позиции диджея, напишите программу, которая обработает все эти просьбы и ответит на них.
Входные данные
В первой строке входных данных записаны числа , и - количество треков в плейлисте, максимальное значение для любого из параметров трека и количество просьб соответственно ().
В следующих строках записаны числа , и - параметры трека, изначально стоящего на -той позиции в плейлисте. ()
В следующих строках записаны просьбы (запросы) вида put i a b c
() и best l r
(), в каждой строке по одной просьбе.
Выходные данные
В ответ на каждую просьбу (запрос) вида best l r
выведите значение самого крутого трека в диапазоне от трека на позиции l
до трека на позиции r
включительно. Так как трек может быть слишком крутым, ответ нужно вывести по модулю .
Подзадачи
№ | баллы | необх. подзадачи | ограничения |
1 | 5 | - | |
2 | 11 | 1 | |
3 | 15 | 1, 2 | |
4 | 19 | 1 | |
5 | 50 | 1, 2, 3, 4 | Нет дополнительных ограничений |
STDIN | STDOUT |
5 10 6 3 4 2 3 3 3 2 3 1 5 4 3 3 3 2 best 1 5 best 1 3 put 1 5 5 5 best 1 5 put 1 6 3 3 best 4 5 | 396147691 463727237 199899553 396147691 |