Запити краси перестановки
У задачі масиви нумеруються з 0.
Перестановка довжини — це масив додатних цілих чисел, де кожен елемент з'являється рівно один раз, і кожне число від до присутнє. Наприклад, , , є перестановками, тоді як , , — ні.
Ми визначаємо множину досяжних перетворень перестановки відносно множини як множину перестановок, які можна отримати з , застосовуючи наступну операцію будь-яку кількість разів (можливо, 0):
Виберіть два індекси так, щоб , і поміняйте місцями елементи перестановки на позиціях та .
Тут позначає бітову операцію XOR.
Множина називається доброю відносно перестановки , якщо множина досяжних перетворень перестановки містить тотожну перестановку.
Ми називаємо перестановку довжини тотожною перестановкою, якщо виконується наступне: .
Краса перестановки визначається як мінімальний розмір доброї множини відносно неї.
Вам дана перестановка довжини . Вам потрібно вивести початкову красу перестановки. Вам також дано запитів. Кожен запит складається з двох чисел . Після кожного запиту вам потрібно поміняти місцями елементи на позиціях та . Зверніть увагу, що перестановка зберігає зміни після кожного запиту. У відповідь на кожен запит вам потрібно вивести красу отриманої перестановки.
Вхідні дані
Перший рядок містить два числа та .
Другий рядок містить чисел — початкова перестановка.
Третій рядок містить одне число — кількість запитів.
У наступних рядках наводяться два числа — параметри -го запиту.
Значення -го запиту визначаються наступним чином. Нехай — це відповідь на попередній запит або краса початкової перестановки, якщо це перший запит. Тоді , а .
Вихідні дані
У першому рядку виведіть красу початкової перестановки.
У наступних рядках виведіть відповіді на запити.
Приклади
Примітка
Після другого запиту перестановка стає .
Нехай . Використовуючи цю множину, ми можемо виконати наступні обміни, щоб перетворити перестановку в тотожну перестановку:
Поміняйте місцями та . Перестановка стає .
Поміняйте місцями та . Перестановка стає .
Поміняйте місцями та . Перестановка стає .
Поміняйте місцями та . Перестановка стає .
Можна довести, що неможливо отримати тотожну перестановку, виконуючи операції з .
Оцінювання
( балів): ;
( балів): ;
( балів): гарантовано, що відповідь не перевищує , ;
( балів): ;
( балів): ;
( балів): ;
( балів): без додаткових обмежень.