eolymp
bolt
Try our new interface for solving problems
Məsələlər

Суммы без модуля

Суммы без модуля

Участники сборов приезжают на сборы группами, и их необходимо заселить в гостиницу. Недолго думая, администратор гостиницы селит i-ую группу в комнаты с номерами с li по ri включительно, по одному человеку в комнату (соответственно, в i-ой группе ri - li + 1 человек). Комнаты не резиновые, а именно вмещают лишь k - 1 человек. Как только в комнату заселяется k-ый человек, все обитатели этой комнаты обижаются и уезжают домой (включая только что заселившегося).

Вдохновленный новым эффективным методом заселения, администратор решил применить подобный метод для завтраков, обедов и ужинов участников сборов. А именно, на j-ый прием пищи приглашаются лишь участники из комнат с номерами с sj по tj включительно. Вам необходимо подсчитать, сколько порций нужно готовить на каждый прием пищи.

Входные данные

В первой строке записаны три натуральных числа - число комнат n (1n100000), характеристика вместимости комнаты k (2k5), и количество произошедших на сборах событий m (1m100000). В последующих m строках описаны сами произошедшие события в хронологическом порядке, по одному в строке. Каждое событие описывается тремя целыми числами. Заезд очередной группы участников описывается как "**1 l r**" (1lrn), где l и r задают диапазон номеров комнат для заселения. Очередной прием пищи описывается как "**2 s t**", где s и t (1stn) задают диапазон номеров комнат, приглашенных в столовую.

Выходные данные

На каждый запрос второго вида выведите количество кушающих участников в отдельной строке.

Zaman məhdudiyyəti 3 saniyə
Yaddaşı istafadə məhdudiyyəti 64 MiB
Giriş verilənləri #1
3 3 9
1 1 3
1 1 2
1 1 1
2 1 3
2 1 2
1 1 3
1 3 3
2 1 3
2 1 2
Çıxış verilənləri #1
3
2
1
1
Müəllif Petr Mitrichev