Escriba el programa más corto posible de modo que cuando combine el primer carácter y cada enésimo carácter posterior en un nuevo programa, la salida sea N. Esto debe funcionar para N = 1, 2, ..., 16.
Otra forma de decirlo es, si elimina todos los caracteres de su programa, excepto el primero y cada Nth después de eso, la salida del código restante debería ser N.
Ejemplo
Si tu código fuera
ABCDEFGHIJKLMNOP
N = 1 da como resultado ABCDEFGHIJKLMNOP
. Ejecutar esto debería generar 1.
N = 2 resultados en ACEGIKMO
. Ejecutar esto debería generar 2.
N = 3 resultados en ADGJMP
. Ejecutar esto debería generar 3.
N = 4 resultados en AEIM
. Ejecutar esto debería generar 4.
N = 5 resultados en AFKP
. Ejecutar esto debería generar 5.
N = 6 resultados en AGM
. Ejecutar esto debería generar 6.
N = 7 resultados en AHO
. Ejecutar esto debería generar 7.
N = 8 resultados en AI
. Ejecutar esto debería generar 8.
N = 9 resultados en AJ
. Ejecutar esto debería generar 9.
N = 10 resultados en AK
. Ejecutar esto debería generar 10.
N = 11 resultados en AL
. Ejecutar esto debería generar 11.
N = 12 resulta enAM
. Ejecutar esto debería generar 12.
N = 13 resultados en AN
. Ejecutar esto debería generar 13.
N = 14 resultados en AO
. Ejecutar esto debería generar 14.
N = 15 resultados en AP
. Ejecutar esto debería generar 15.
N = 16 resultados en A
. Ejecutar esto debería generar 16.
Detalles
- Todos los caracteres están permitidos, ASCII y no ASCII. (También se permiten líneas nuevas y ASCII no imprimibles. Tenga en cuenta que el retorno de carro y el avance de línea cuentan como caracteres distintos).
- Su puntaje es la longitud en caracteres de su programa inalterado (15 en el ejemplo). El puntaje más bajo gana.
- Una puntuación por debajo de 16 es claramente imposible porque entonces al menos dos de los programas alterados serían idénticos.
- La salida puede ser a un archivo o stdout o cualquier otra cosa razonable. Sin embargo, la salida de los 16 programas diferentes debe ir al mismo lugar (por ejemplo, no está bien si
AO
va a stdout peroA
va a un archivo). No hay entrada - La salida debe estar en decimal, no hexadecimal. La salida real solo debe contener los 1 o 2 caracteres que componen el número del 1 al 16, nada más. (Cosas como las de Matlab
ans =
están bien). - Su programa no tiene que funcionar para N = 17 o superior.
ABCDEFGHIJKLMNO
y N = 15
, el código de resultado es justo A
.