eolymp
bolt
Try our new interface for solving problems
Məsələlər

Перестановочный логарифм

Перестановочный логарифм

Пусть заданы две перестановки \textbf{p = (p_1, p_2, ..., p_N)} и \textbf{q = (q_1, q_2, ..., q_N)} чисел от \textbf{1} до \textbf{N}. Требуется найти такую минимальную целую неотрицательную степень \textbf{d}, что \textbf{p^d = q} (то есть \textbf{d}-кратное применение перестанвоки \textbf{p} к массиву \textbf{(1, 2, ..., N)} приведёт к массиву \textbf{q}). \InputFile В первой строке входного файла задаётся натуральное число \textbf{N} (\textbf{1} ≤ \textbf{N} ≤ \textbf{2·10^5}). Во второй и третьей строках определяются перестановки \textbf{p} и \textbf{q} соответственно. Каждая из этих строк содержит \textbf{N} чисел, определяющих соответствующую перестановку. \OutputFile В выходной файл необходимо вывести наименьшее неотрицательное значение \textbf{d}, при котором \textbf{p^d = q}. Если такого числа не существует, выведите \textbf{-1}.
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 256 MiB
Giriş verilənləri #1
5
2 3 4 1 5
3 4 1 2 5
Çıxış verilənləri #1
2
Mənbə III International Summer School Programming in Sevastopol 2012