En este desafío, creará un programa que crece a medida que avanza a través de las edades ... Hasta 2017.
Desafío
Siempre que esta descripción del desafío diga "programa", también puede leer "función".
Su envío, cuando se ejecute, generará un programa que tiene una longitud de THE LENGTH OF YOUR SUBMISSION
+ 1
bytes.
Cuando se ejecuta ese programa, generará un programa que tiene una longitud de THE LENGTH OF YOUR SUBMISSION
+ 2
bytes ... y así sucesivamente.
Sin embargo , cuando su programa ha alcanzado una longitud de 2017 bytes, en su lugar debe salir 2017
y salir.
Reglas
- La salida del programa final tiene que ser
2017
y solo2017
. Puede ser una cadena o un entero, pero debe leer2017
y no2017.0
o0x7E1
o cosa por el estilo. - No hay lagunas estándar .
- Solo su programa inicial puede requerir entrada, que se agregará a su bytecount.
Entonces, si su programa inicial tiene 324 caracteres de largo y toma una entrada de 13 bytes, su puntaje total será 324 + 13 = 337 y el programa que salga debe tener 338 bytes de largo.perl -X
Sin embargo, el uso de indicadores de línea de comando (p . Ej. ) Está bien, siempre que su programa inicial y todos los programas generados utilicen los mismos indicadores. Además, también cuentan para el recuento total de bytes. Los guiones, barras, etc. delante de un indicador de línea de comando no cuentan para el total, por lo que, por ejemplo,perl -X
cuentan como un byte adicional.
- Si devuelve una función, debería ser una función real y no una cadena que, cuando se evalúa, produce una función.
- No se permiten quines inadecuados (si su programa es un quine).
Ejemplo
Pseudocódigo, 99 bytes
IF (PROGRAM LENGTH == 2017) PRINT 2017 ELSE PRINT (THE SOURCE OF THIS PROGRAM + 1 BYTE PADDING)
Su envío puede funcionar de manera diferente, siempre que cumpla con las reglas anteriores.
;;;
permitido?