¡2015 fue el año de la cabra! En este desafío, descubrirás qué animal representa el año. Para evitar que este desafío sea complejo, no necesitará calcular el año nuevo chino.
Debido a que solo son 12 animales en el Zodiaco, su código deberá ser lo más corto posible.
Ejemplos
Su programa debe obtener el año del sistema , la primera línea es solo para referencia
2015
Goat
1924
Rat
1923
Pig
2008
Rat
Especificación
El orden del zodiaco es:
Rat, Ox, Tiger, Rabbit, Dragon, Snake, Horse, Goat, Monkey, Rooster, Dog, Pig
Rat
comienza en 2008, Pig
es 2007, Ox
en 2009, etc. al final, este ciclo vuelve a funcionar.
La salida debe estar correctamente en mayúscula.
code-golf
kolmogorov-complexity
date
Downgoat
fuente
fuente
Rat
?Respuestas:
Pyth, 54 bytes
Pruébelo en línea: demostración
Puede reemplazar los últimos 3 caracteres
.d3
con cualquier número de año para probar los otros animales del zodiaco.Explicación:
fuente
Pyth - 65 bytes
Pruébelo en línea aquí .
fuente
JavaScript ES6,
106105104103 bytes¡Se guardó 1 byte gracias a Maltysen, 1 byte para insertar el nombre de usuario aquí y 1 byte para edc65!
Bastante autoexplicativo.
fuente
btoa
parece ser 1.5x o más de la longitud de la cadena codificada.0
como separador y el uso de esta expresión regular para dividir la cadena:/(?=[A-Z])/
. Feliz año nuevo. :)match(/.[a-z]+/g)
en lugar de dividir (valor agregado: dividir con captura no es ES6, es una característica exclusiva de FireFox) (y 1 byte más corto)CJam,
828075 bytesEste fue un puerto directo de mi respuesta de la Vía Láctea .Guardado 7 bytes gracias a NinjaBearMonkey .
fuente
S
como variable para el espacio."Monkey Rooster Dog Pig Rat Ox Tiger Rabbit Dragon Snake Horse Goat"S/et0==
Japt ,
7265 bytesPruébalo en línea!
fuente
$[$Ð i -4 %12]
, puedes usarg(Ð i -4 %C
.MATL , 85 bytes
Utiliza la versión 6.0.0 del lenguaje / compilador. Trabajos en octava.
Ejemplo
Explicación
Tenga en cuenta que la cadena inicial se desplaza cíclicamente por 3 para evitar una resta.
fuente
Vía Láctea 1.6.1 ,
10196 bytesGuardado 5 bytes gracias a un recordatorio de Luis Mendo .
Explicación
El código modula el sistema por 12 años y genera el animal adecuado.
Uso
fuente
2008-
reorganizando la cadena como en mi respuesta?CJam, 69 bytes
Contiene un montón de no imprimibles. Pruébalo aquí
fuente
Python 3,
126116112 bytesEditar: mantengo la otra respuesta porque es genial, pero esto es más corto.
Si el espacio en blanco final está bien, entonces son 126 bytes. Si no, son 134 bytes después de agregar
.strip()
al final del código.fuente
R, 119 bytes
format(Sys.Date(),"%Y")
devuelve el año como una cadena de caracteres,(format(Sys.Date(),"%Y"):1)[1]
es la forma más corta en la que podría pensar para convertirlo en un entero para que podamos aplicarlo%%
(el generador de secuencias de:
hecho coacciona automáticamente al entero).+1
porque los índices R se basan en 1 y no en 0.fuente
PHP> = 5.6, 84 bytes
Muy sencillo:
fuente
Python
129126bytesEDITAR : acabo de aprender s.split ('') = s.split ()
Aunque este no es el método más corto, aquí hay una respuesta alternativa a la de @ Sherlock9:
Pruébalo aquí
fuente
time
siguiente.PowerShell, 92 bytes
Similar en espíritu a otras respuestas, agregadas aquí solo por el bien de la catalogación. Esto toma la cadena
"Monkey ... Goat"
y la-split
coloca en espacios para crear una matriz, que es más barata que especificar los elementos individualmente("Monkey","Rooster",...)
. Nos indexamos en esa matriz con elyear
mod actual12
, que genera el resultado. Nada muy elegante.fuente
C # 159
Versión legible / sin golf
fuente
J , 78 bytes
Uso:
Explicación:
fuente