Сьогодні Козак Вус знайшов поличку книг. Усього на поличці було книг, розташованих у ряд. На кожній книзі було написане одне ціле число a_i. Усі ці числа різні з проміжку . Іншими словами, — перестановка. Також кожна книга має свій колір, колір -ої книги c_i.
Козак хоче навести лад на поличці, для цього потрібно, щоб книги йшли в порядку зростання чисел, записаних на них, тобто книга іде першою, наступна і так далі. За одну операцію він може поміняти місцями будь-які дві книги різного кольору. Допоможіть Вусу впоратись з цією задачею за мінімальну кількість операцій. Гарантується, що це можливо зробити.
Перший рядок містить одне ціле число (1 \leq n \leq 10^5) — кількість книг.
Другий рядок містить цілих чисел a_1, a_2, \ldots, a_n (1 \leq a_i \leq n) — числа, записані на книгах.
Гарантується, що всі числа різні.
Третій рядок містить цілих чисел c_1, c_2, \ldots, c_n (1 \leq c_i \leq n) — кольори книг.
Гарантується, що рішення завжди існує.
У першому рядку виведіть одне число — кількість операцій.
У наступних рядках виведіть по два цілі числа — позиції книг, які потрібно поміняти місцями.
Приклад 1
Приклад 2
(до 50 балів) n \leq 1000; припустимо, що — мінімальна кількість операцій, які потрібно зробити, щоб відсортувати книги в певному тесті, а — кількість операцій, які ви використали.Тоді результат за цей тест буде рівний:
, якщо k = m
10 + \lfloor 30 - 30 \cdot (k - m)/(3n - m) \rfloor, якщо m < k \leq 3n
, якщо k > 3n.
Ваша кількість балів за цей блок буде рівною мінімуму з результатів у всіх тестах з блоку.
(10 балів) 1000 < n \leq 10^5, усі кольори різні.
(40 балів) без додаткових обмежень.