Una permutación de tamaño n es un reordenamiento de los primeros n enteros positivos. (lo que significa que cada número entero aparece una vez y exactamente una vez). Las permutaciones pueden tratarse como funciones que cambian el orden de una lista de elementos de tamaño n . Por ejemplo
(4 1 2 3) ["a", "b", "c", "d"] = ["d", "a", "b", "c"]
Así, las permutaciones se pueden componer como funciones.
(4 1 2 3)(2 1 3 4) = (4 2 1 3)
Esto trae consigo muchas propiedades interesantes. Hoy nos estamos centrando en la conjugación . Las permutaciones y y x (ambas de tamaño n ) son conjugados si hay permutaciones g y g -1 (también de tamaño n ) de modo que
x = gyg-1
y gg -1 es igual a la permutación de identidad (los primeros n números en el orden correcto).
Su tarea es tomar dos permutaciones del mismo tamaño a través de métodos de entrada estándar y decidir si son conjugados. Debe generar uno de dos valores consistentes, uno si son conjugados y el otro si no lo son.
Este es el código de golf, por lo que las respuestas se puntuarán en bytes con menos bytes mejor.
Hay muchos teoremas sobre permutaciones conjugadas que están a su disposición, así que buena suerte y feliz golf.
Puede tomar la entrada como un contenedor ordenado de valores (ya sea 1-n o 0-n) que representan la permutación como arriba, o como una función que toma un contenedor ordenado y realiza la permutación. Si elige tomar una función, debe tomarla como un argumento en lugar de tenerla con un nombre predefinido.
Casos de prueba
(1) (1) -> True
(1 2) (2 1) -> False
(2 1) (2 1) -> True
(4 1 3 2) (4 2 1 3) -> True
(3 2 1 4) (4 3 2 1) -> False
(2 1 3 4 5 7 6) (1 3 2 5 4 6 7) -> True