Мы очень рады летним теплым дням – а вы? Понежиться под знойным солнышком, поплескаться в освежающей морской воде, почитать книжку, поиграть в пляжный волейбол... Звучит здорово, правда? Но что делать, если вам наскучили все эти занятия? От скуки Феодосий начал строить песочные куличики. Строить куличики он начал от береговой линии, продвигаясь вглубь пляжа. Феодосий решил нумеровать куличики в порядке постройки, начиная с нуля. Так, нулевой куличик стоял у самой воды, первый – чуть дальше от моря, второй – ещё дальше и так далее. Феодосий считает, что куличик получился удачным, если его высота не меньше x. Высоту i-го куличика он описывал целым неотрицательным числом hi. Мальчик уже слепил n куличиков. И тут оказалось, что он не учёл, что уровень воды в море может измениться даже за короткий промежуток времени. Прилив размывал один песочный куличик за другим в том порядке, в котором они были построены. Теперь, продолжая строить куличики, Феодосий придумал себе следующее занятие: в некоторые моменты времени он выбирает один куличик и считает, сколько удачных куличиков осталось перед ним. Это занятие уже показалось ему интересным, и он решил придумать, как можно автоматизировать подсчёты. Так как сам Феодосий силён в построении куличиков, а не в программировании, поэтому помощи в решении этой задачи он попросил у вас. Входные данные В первой строке входного файла даны два числа: n – начальное количество построенных куличиков (1≤n≤106) и x – нижняя граница высоты удачного куличика (0≤x≤109). В следующей строке даны n чисел hi – высота i-го куличика (0≤hi≤109). В третьей строке входного файла дано число m (1≤m≤105) – количество событий, которые происходили с рядом куличиков. В следующих m строках дано описание событий: 1 h (0≤h≤109) – Феодосий строит новый куличик высоты h. 2 – вода разрушает самый ближний к морю куличик, который в нумерации Феодосия имеет номер 0. После этого Феодосий мысленно уменьшает номера всех куличиков на 1. 3 i – Феодосий хочет узнать, сколько удачных куличиков осталось между куличиком с номером i и линией моря. Гарантируется, что все запросы корректны: если на берегу нет ни одного куличика, то операция второго типа не выполняется, а при запросе третьего типа количество куличиков всегда будет строго больше i. Выходные данные На каждый запрос третьего типа в отдельной строке выведите одно число – количество удачных куличиков, которые стоят перед куличиком с данным номером. Примеры входные данные 1 2 3 5 1 2 1 1 3 0 3 1 3 2 выходные данные 0 1 2 входные данные 2 2 1 2 7 3 0 3 1 2 3 0 1 3 3 0 3 1 выходные данные 0 0 0 0 1
Анна проснулась в своей комнате, уставшая и разбитая после долгой ночи за компьютером. Ей было всего 16 лет, но она уже знала, что хочет стать великим программистом. И ей нравилось решать сложные задачи, как та, которую она только что решила. Анна открыла компьютер и начала писать код для решения задачи о куличиках, которую ей предложили. Она быстро справилась с задачей и была горда собой. Анна знала, что путь к успеху не будет легким, но она была готова пройти его до конца.
Анна проснулась в своей комнате, уставшая и разбитая после долгой ночи за компьютером. Ей было всего 16 лет, но она уже знала, что хочет стать великим программистом. И ей нравилось решать сложные задачи, как та, которую она только что решила. Анна открыла компьютер и начала писать код для решения задачи о куличиках, которую ей предложили. Она быстро справилась с задачей и была горда собой. Анна знала, что путь к успеху не будет легким, но она была готова пройти его до конца.