Una permutación de un conjunto es un biyectiva función . Por ejemplo, si entonces la función es una permutación:
También podemos tener permutaciones en conjuntos infinitos, tomemos como ejemplo: la función es una permutación, intercambiando lo impar y lo par enteros en bloques de dos. Los primeros elementos son los siguientes:
Desafío
Su tarea para este desafío es escribir una función / programa que implemente 1 permutación en los números naturales positivos. El puntaje de su solución es la suma de puntos de código después de mapearlos con la permutación implementada.
Ejemplo
Supongamos que tomamos la permutación anterior implementada con Python:
def pi(x):
return x - 1 + 2*(x % 2)
El carácter d
tiene el punto de código , . Si hacemos esto para cada personaje, obtenemos:
La suma de todos estos caracteres mapeados es , este sería el puntaje para esa función.
Reglas
Implementará una permutación como función o programa
- dado un número naturalπ ( x ) , retorno / salida
- con el propósito de este desafío hace 0 no contiene
- la permutación debe permutar no trivialmente un subconjunto infinito de
- su función / programa no puede leer su propia fuente
Puntuación
La puntuación viene dada por la suma de todos los puntos de código (cero bytes pueden no ser parte del código fuente) bajo esa permutación (los puntos de código dependen de su idioma 2 , puede usar SBCS, UTF-8, etc., siempre y cuando tu idioma lo admite).
La presentación con el puntaje más bajo gana, los lazos se rompen por la presentación más temprana.
Excepto por las permutaciones que solo permutan un subconjunto finito de , lo que significa que el conjunto debe ser infinito.
Si mejora su puntaje, puede usar, por ejemplo, un envío Jelly codificado en UTF-8 en lugar del SBCS habitual.