Задача №114972. Зима в городе К

Город К расположен на севере очень большой страны. И вот наконец-то в этот город пришла зима, которая продлится \(m\) дней. В городе К живут самые обычные люди большой страны, поэтому они очень не любят, когда их дом покрыт снегом.

Всего в этом городе \(n\) домов, каждый из которых изначально не покрыт снегом. Вы знаете, что утром \(i\)-го зимнего дня произойдет одно из следующих событий:

  • Выпадет снег, и дома с номерами от \(l_i\) до \(r_i\) включительно покроются снегом.
  • Коммунальные службы очистят от снега дома с номерами от \(l_i\) до \(r_i\) включительно.

Начиная с этого момента, Вы — мэр города К. Первое ваше задание на посту мэра — спрогнозировать уровень счастья каждого жителя. Для этого вам нужно узнать, сколько дней во время зимы каждый дом не будет покрыт снегом.

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

Первая строка содержит два числа \(n\) и \(m\) (\(1 \leq n, m \leq 200\,000\)) — количество домов в городе К, а также длительность зимы.

В следующих \(m\) строках описываются события, которые происходили в каждый из дней зимы. В \(i\)-й строке содержится символ \(c_i\) и два целых числа \(l_i\) и \(r_i\) (\(c_i = +\) или \(c_i = -\), \(1 \leq l_i \leq r_i \leq n\)). Если \(c_i = +\), то в \(i\)-й день выпал снег на отрезке домов с \(l_i\)-го по \(r_i\)-й. Если \(c_i = -\), то в \(i\)-й день был убран весь снег с домов с \(l_i\)-го по \(r_i\)-й.

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

Для каждого дома выведите количество дней, которые он не будет покрыт снегом.

Примечание

Рассмотрим первый пример.

В первый день зимы под снегом не будет дома \(4\).

Во второй день зимы под снегом не будут домов \(1, 2, 4\).

В третий день зимы под снегом не будет дома \(1\).

Поэтому ответ \(2\) \(1\) \(0\) \(2\).

Система оценки

Тесты к этой задаче состоят из 5 групп. Баллы за каждую группу ставятся только при прохождении всех тестов группы и всех тестов некоторых из предыдущих групп. Обратите внимание, прохождение тестов из условия не требуется для некоторых групп.

Доп. ограничения
Группа Баллы \(n\) \(m\) Необх. группы Комментарий
0 0 Тесты из условия.
1 14 \(n \le 1000\) \(m \le 1000\) 0
2 19 \(l_i = r_i\)
3 22 \(l_i = 1\)
4 18 Если \(c_i =\) + , \(c_j =\) - , то \(i lt; j\).
5 27 0–4
Примеры
Входные данные
4 3
+ 1 3
- 1 2
+ 2 4
Выходные данные
2 1 0 2 
Входные данные
8 5
+ 1 3
+ 5 8
- 2 8
- 3 7
+ 1 6
Выходные данные
0 2 2 4 3 3 4 4 
Сдать: для сдачи задач необходимо войти в систему