Problema
Un día, tu jefe se te acerca y te dice que necesita saber la hora. Todavía insiste después de que usted señala el reloj directamente sobre su cabeza, y confiesa que tiene un caso grave de discalculia , lo que hace que ni siquiera pueda ver los números en un reloj. Si bien todavía te preguntas cómo alguien que no puede ver los números puede administrar una empresa, te dice que "hagas algo al respecto", sea lo que sea.
Su tarea ahora es crear un programa o función que, dado un tiempo de entrada con horas y minutos (los segundos son opcionales) (las horas están basadas en 24), genera una oración legible en inglés que no contiene números.
No es necesario superar los segundos.
Por ejemplo, 08:45:15
debería dar salidaquarter to nine o'clock AM
Casos de prueba
00:00:00 > twelve night
12:00:00 > twelve noon
06:00:00 > six o'clock AM
18:00:00 > six o'clock PM
06:15:00 > quarter past six o'clock AM
18:45:00 > quarter to seven o'clock PM
11:30:00 > half past eleven o'clock AM
13:22:00 > twentytwo minutes past one o'clock PM
17:43:00 > seventeen minutes to six o'clock PM
00:09:00 > nine minutes past twelve o'clock AM
Reglas
Los números de salida pueden tener la forma de cuarenta y dos o cuarenta y dos, lo que más le guste. Las lagunas estándar no están permitidas. Se permiten nuevas líneas al final, pero la oración debe estar en 1 línea.
La entrada puede estar en cualquier formato que desee, por ejemplo HH:MM:SS
, HH,MM,SS
, HHMMSS
, HH/MM/SS
, o cualquier variante sin segundos, pero se debe hacer el formato de entrada claro en su respuesta. No es necesario dar salida en one minute
lugar deone minutes
para los minutos que van del 0 al 30 (0 y 30 incluidos) debe usar past
, y para los demás debe usarto
Como el tiempo es relativo, gana el código más corto en bytes.
forty-five
cuando los casos de prueba indican claramente quarter to
el formato de entrada apropiado? (simplemente cámbielo a cuarenta y dos;)) Además, la complejidad de kolmogorov no es una etiqueta apropiada.
one
a twenty-nine
, con quarter
la sustitución fifteen
y half
que representa thirty
, pero eso no es clara. Además, para futuras preguntas, recomiendo encarecidamente el Sandbox para resolver los problemas antes de publicar.