O. Логирование
2500 мс · 256 МБ · всё или ничего
Список событий изначально пуст. Каждое событие имеет тип — строчную латинскую букву. Обрабатывайте операции:
+ i k c— вставить событий типа так, чтобы первое из них оказалось на позиции ;- i k— удалить событий, начиная с позиции ;? i j— вывести количество различных типов на позициях от до .
События нумеруются с единицы; все операции корректны.
Формат ввода
В первой строке — число операций (). Далее операций. Количество вставляемых или удаляемых за одну операцию событий не превосходит , а суммарное количество вставленных событий за всё время не превосходит .
Формат вывода
На каждый запрос ? выведите количество различных типов на отрезке.
Примеры
ввод
8 + 1 4 w + 3 3 o ? 2 3 - 2 2 ? 2 3 + 2 2 t ? 1 6 - 1 6
вывод
2 1 3
ввод
2 + 1 1 a ? 1 1
вывод
1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.