Decisión de Papá Noel:
En este desafío, ayudará a Santa Claus decidir si alguien en su lista ha sido malo o bueno, y posteriormente obtener coal
o toys
.
Pero, por desgracia, Santa no está organizado, en algunas de sus entradas, las naughty
, nice
y los name
campos están en el orden equivocado.
Entrada
La entrada vendrá en el siguiente formato intercambiable:
- el nombre de la persona (solo no puede contener dos puntos
a-zA-Z0-9
) - la palabra
naughty
seguida directamente por dos puntos y un número entero no negativo que representa la cantidad de veces que Santa te atrapó siendo travieso - la palabra
nice
seguida directamente por dos puntos y un número entero no negativo que representa la cantidad de veces que Santa te sorprendió siendo amable
Todos separados con un solo espacio en blanco (ASCII 32) entre cada uno de ellos.
Además, el nombre no tendrá espacios en blanco entre las partes del nombre Santa Claus
-> SantaClaus
.
Prima:
- (25%) : Él es Santa Claus, por lo que debe verificar la lista dos veces y asegurarse de que no haya duplicados. (En cuyo caso, solo obtiene los primeros puntajes que tiene el usuario)
Ejemplo:
Quill naughty:4 nice:0
naughty:0 Doorknob nice:3
naughty:2 Quill nice:6
nice:3 balpha naughty:3
pops nice:4 naughty:2
Salida:
La salida debe consistir en:
El nombre de la persona seguido de:
- Si hay más puntos
naughty
, entoncescoal
: - Si hay más puntos
nice
, entoncestoys
. Pero si
naughty
ynice
son iguales, entoncesneeds more data
Salida de ejemplo:
- Con bonificación de organización y bonificación por eliminación de duplicados:
Quill coal
Doorknob toys
balpha needs more data
pops toys
- Sin bonificación:
Quill coal
Doorknob toys
Quill toys
balpha needs more data
pops toys
Respuestas:
Pyth, 68 bytes - 25% = 51
Pruébelo en línea: demostración
fuente
Julia,
176169 bytesEsta es una función anónima que acepta una cadena e imprime el resultado en STDOUT. Para llamarlo, asígnele un nombre, p. Ej.
f=s->...
.Sin golf:
fuente
Pyth - 64 bytes
Intentará usar cadenas empaquetadas.
Pruébelo en línea aquí .
fuente
Ruby,
144123155 * .75 = 116.25 bytesGracias a histocrat por sugerir
grep
método.164 * .75 = 123 bytes
144 bytes
Sin golf
Uso:
fuente
.select{|t|t[?:]}
se puede jugar golf.grep(/:/)
Perl,
13811310510310296 - 25% de = 72incluye +1 para
-p
Menos golfizado:
nice
onaughty
como nombre de variable;<=>
para indexar una lista de cadenas de salida.nice
o ennaughty
lugar de 2nd.$$_ ? ... : ($$_++, ...)
a$$_++ ? ... : ...
(por qué no lo vi antes).
fuente
JavaScript (ES6), 174 bytes - 25% de bonificación = 130.5 puntaje
Explicación
Prueba
Mostrar fragmento de código
fuente
CJam, 64 bytes
Pruébalo en línea!
fuente
Lua, 329 Bytes - 25% de bonificación = 246.75
Se editará en versiones no explicadas y explicaciones más tarde, un poco cansado en este momento. Toda la entrada se toma a través de la línea de comando, separada por espacios.
fuente
Python 2, 206 bytes - 25% = 154.5
fuente
JavaScript (ES6) 120 (160-25%)
Función anónima que utiliza cadenas de plantilla, hay 4 nuevas líneas que son significativas e incluidas en el recuento de bytes
fuente