Por Nacho Cabanes
Nivel de dificultad aproximado (1 a 5): 4
Dado un conjunto de 5 elementos, un reordenamiento posible de los elementos puede venir dado por: 5 3 2 4 1
Esto significa que el punto 1 pasa a la posición 5, el punto 2 pasa a la posición 3, el punto de pasa a la posición 3, el punto 4 no se mueve, y el punto 5 pasa a la posición 1. Es posible que para un reordenamiento, algúnos elementos no se mueve. En el caso anterior, el punto 4 se mantiene en la misma posición.
Debe escribir un programa para contar el número de reordenamientos únicos de los N elementos que se puede encontrar, donde no haya ningún elemento que permanezca en su posición original.
Como este número puede ser muy grande, debe imprimir su respuesta módulo 1073676287 (módulo significa "resto de la división por").
Formato de entrada:
Un solo entero N, (1 <= N <= 1200), en una sola línea.
Formato de salida:
Su salida debe consistir en un solo número entero, R, seguido por un avance de línea. R es el número de posibles reordenamientos mod 1.073.676.287
(Asegúrate de que has leído las preguntas frecuentes antes de plantear tu solución)
Ejemplo de entrada:
2Ejemplo de salida:
1Ejemplo de entrada:
4Ejemplo de salida:
9Explicación:
N = 2
R = 1 .... (2,1)
N = 4
R = 9 .... (2,1,4,3), (2,3,4,1), (2,4,1,3), (3,1,4,2), (3, 4,1,2), (3,4,2,1), (4,1,2,3), (4,3,1,2), (4,3,2,1)