colors.rgb ("azul") produce "# 0000FF". colors.rgb ("azul amarillento") produce NaN. colors.sort () produce "arcoiris"
Usando las reglas establecidas en la imagen y su texto de título (citado aquí), cree un programa que acepte toda la entrada dada y muestre la salida apropiada.
La entrada se puede tomar con stdin o el equivalente más cercano. Debería haber una línea como
[n]>
para escribirlo, yn
aumenta en 1 cada comando. Debería comenzar en 1.El resultado debe mostrarse usando stdout o el equivalente más cercano. Debería haber un
=>
en cada línea de salida.
Las 13 condiciones, más las 3 en el título (citadas) deben funcionar.
Este es el código de golf, por lo que gana la respuesta más corta.
10.5
?n
aumentar en 1? Eso no es lo que hace el cómic ... ;-)Respuestas:
Python 3,
700698697689683639611Pestañas como sangría.
Como esto usa un Excepto simple, no puede Ctrl-C. Sin embargo, Ctrl-Z y kill %% funcionan
Algunas de las condiciones son generalizadas y otras solo funcionarán con la entrada exacta.
A+"B"
funcionará con cualquier A y B, no solo cuandoA == B
"A"+[]
funcionará para cualquier A que se pueda convertir a int (incluye cadenas hexadecimales y binarias, por ejemplo, 0xff y 0b01010)(A/0)
funcionará para cualquier A, Eval CausesDivideByZeroError
que se maneja en el excepto(A/0)+B
funcionará con cualquier A o B.literal_eval
(E) genera un error.""+""
solo funciona para el signo +. Cualquier otra cosa imprimirá NaN, NaP o NaN.00 ...[A, B, C]+D
funciona comprobando queD == C+1
funcionará para cualquier longitud de la lista y cualquier número.2/(2-(3/2+1/2))
, Cualquier cosa que no se pueda analizar que tenga-
un+
algún lugar después generará NaN.000 ... 13RANGE(" ")
Codificado+A
funcionará para cualquier A. Ouputs"current_line_number+A"
A+A
funciona para cualquier A siempre que sean iguales y sean tipos de pitón bulitinRANGE(1,5)
CodificadoFLOOR(A)
funciona para cualquier A.colors.rgb("blue")
El lstrip en eval convierte esto engb("blue")
que tiene una respuesta codificada.colors.rgb("yellowish blue")
El lstrip en eval convierte esto en elgb("yellowish blue")
cual los intentos de usar una variable inexistente siy
está presente en el argumento causando un error que la excepción se convierte en NaNcolors.sort()
El lstrip convierte esto ent()
que tiene una respuesta codificada.Brainsteel señaló un error en mi suposición para la regla 10.
fuente
RANGE(" ")
es un rango de caracteres desde el carácter de comillas dobles \ x22 hasta el carácter de espacio \ x20 y viceversa.2
para4
en la línea 11, 2 es ahora 4 y 12 es ahora 14. Esto también se aplica a los números de línea.Python, 1110 bytes
La sobrecarga del operador no es mala, ¿verdad?
Mi objetivo no era tanto ganar (obviamente) como hacerlo lo más genérico posible. Muy poco está codificado. Intenta cosas por el estilo
RANGE(10)
,9*1
yRANGE("A")
,(2/0)+14
y"123"
los resultados de la diversión!Aquí hay una sesión de muestra:
fuente
C, 412 bytes
Esto está básicamente codificado, pero a todas las otras respuestas hasta ahora les faltaba algo ...
Salida:
fuente
Pitón 3, 298
Todo está codificado, pero la entrada se convierte en un número que luego se convierte en una cadena y se busca en una cadena grande que contiene todos estos números seguidos de sus respuestas.
fuente
Python 3,
542484 bytesComo no se mencionó el hardcoding absoluto, esta es mi solución.
fuente
"2+\"2\""
se convierte'2+"2"'
. El recuento de importación también podría eliminarse si agrega una variable de contador.