Турнірна таблиця обласної олімпіади
Обмеження: 2 сек., 256 МіБ
Олімпіада в самому розпалі — фаворит змагання Зеник встиг розв’язати кілька задач, але запекла боротьба тільки попереду.
Учасники олімпіади на Алготестері бачать тільки свій результат, але не знають, скільки балів набрали інші. А от організатори можуть спостерігати повну картину — їм видно турнірну таблицю.
В олімпіаді беруть участь n людей, пронумерованих від 1 до n. Зеник виступає під номером 1.
Порядок учасників у турнірній таблиці заданий перестановкою p чисел від 1 до n. На першому місці в таблиці розташований учасник номер p1, на другому місці — учасник p2 і т. д.
Під час олімпіади відбулося q подій. Події бувають трьох типів:
Задано ti = 1, ki. Зеник розв’язує задачу й обганяє ki учасників над ним в турнірній таблиці.
Задано ti = 2, xi. Учасник з номером xi обганяє одного учасника над собою.
Задано ti = 3, xi та ki. Організаторів олімпіади, які прикували погляди до таблиці, цікавить сума номерів ki учасників, що розташовані безпосередньо над учасником з номером xi.
Організатори п’ють чай і не хочуть нічого рахувати самостійно. Допоможіть їм відповісти на їхні запитання.
Вхідні дані
У першому рядку задано одне ціле число n — кількість учасників.
У наступному рядку задано n цілих чисел pi, що задають початковий порядок учасників у турнірній таблиці.
У наступному рядку задано одне ціле число q — кількість подій під час олімпіади.
У наступних q рядках задано події.
Якщо подія першого типу, то задано два цілі числа ti=1 та ki — тип події та кількість учасників, яких пережене Зеник. Перед Зеником є хоча б ki учасників.
Якщо подія другого типу, то задано два цілі числа ti=2 та xi — тип події та номер учасника, який пережене учасника над ним. Учасник xi не є першим.
Якщо подія третього типу, то задано три цілі числа ti=3, xi та ki — тип події, номер учасника та кількість над ним, яка цікавить організаторів олімпіади. Перед учасником з номером xi є хоча б ki учасників.
Вихідні дані
На кожен запит третього типу — виведіть суму номерів ki учасників над учасником з номером xi.
Обмеження
2≤n,q≤106,
1≤pi≤n, усі pi різні,
1≤ki≤n−1, 1≤xi≤n,
серед подій є хоча б одна подія третього типу.
Оцінювання задачі складається із наступних блоків:
1 бал — приклад з умови,
4 бали — є запити тільки третього типу,
10 балів — є запити тільки другого та третього типів,
10 балів — без додаткових обмежень.
Бали за блок ви отримаєте лише якщо дасте правильну відповідь на всі тести з блоку.
Приклади
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
3 2 3 1 10 3 3 1 2 3 3 2 1 3 1 2 1 2 3 2 2 2 3 2 2 3 1 1 3 2 1 | 2 3 5 4 2 3 |