Суми без модуля#5294

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

3 секунди
64 мегабайти
Дуже легка

Учасники зборів приїжджають групами і їх необхідно розмістити в готелі. Адміністратор розміщує -ту групу в кімнати з номерами від l_i до r_i включно, по одній людині в кімнату. Таким чином, у -й групі r_i - l_i + 1 людей. Кімнати мають суворе обмеження місткості — не більше k-1 осіб. Якщо до кімнати потрапляє -та людина, всі її мешканці, разом із новим, залишають її.

Натхненний цим ефективним методом, адміністратор вирішив застосувати подібний підхід і до організації харчування (сніданки, обіди й вечері). Для кожного прийому їжі запрошуються лише учасники з кімнат з номерами від s_j до t_j включно на -й прийом їжі. Ваше завдання — визначити, скільки порцій треба готувати для кожного прийому їжі.

Вхідні дані

У першому рядку зазначено три натуральних числа: кількість кімнат (1 \le n \le 100000), ліміт місткості кімнати (2 \le k \le 5) та кількість подій (1 \le m \le 100000), що відбулися на зборах.

Далі йде рядків: кожен описує подію в хронологічному порядку. Кожна подія задається трьома цілими числами. Прибуття нової групи позначається як "1 " (1 \le l \le r \le n), де та задають діапазон номерів кімнат для розміщення. Подія прийому їжі — "2 ", де і (1 \le s \le t \le n) задають діапазон кімнат, запрошених на прийом їжі.

Вихідні дані

Для кожної такої події виведіть кількість учасників, що їдять, в окремому рядку.

Приклади

Приклад 1

Loading
Loading