Descripción del problema
Dada la hora actual, léala en inglés.
El tiempo se expresa en horas h y minutos M. En la lectura en inglés, la forma de leer una hora es:
si m es 0, luego lea la hora, luego agregue "en punto", como 3:00 lea "tres" en punto ".
Si m no es 0, lea el tiempo y luego lea los puntos, como 5:30, lea "cinco y media".
Las horas y minutos se pronuncian en números ingleses, 0-20 se pronuncia como:
0: cero, 1: uno, 2: dos, 3: tres, 4: cuatro, 5: cinco, 6: seis, 7: siete, 8: ocho, 9: nueve, 10: diez, 11: once, 12: doce, 13: trece, 14: catorce, 15: quince, 16: dieciseis, 17: diecisiete, 18: dieciocho, 19: diecinueve, veinte y veinte.
30 se pronuncia treinta, 40 es cuarenta y 50 es cincuenta.
Para números mayores que 20 y menores que 60, primero lea los diez completos, luego agregue los dígitos individuales. Por ejemplo, 31 lee primero 30 y luego agrega 1, que se lee como "treinta y uno".
De acuerdo con la regla anterior, 21:54 dice "veintiuno cincuenta y cuatro", 9:07 dice "nueve siete" y 0:15 dice "cero quince".
Formato de
entrada La entrada contiene dos enteros no negativos h y m, que representan las horas y minutos de tiempo. Los números distintos de cero no tienen ceros a la izquierda. h es menor que 24, m es menor que 60.
Formato de
salida Hora y hora de salida en inglés.
Entrada de muestra
0 15
Salida de muestra
cero quince
Implementación de código:
# 键:值 访问只能字典名[键],没有索引,不能切片操作
dit={0:"zero", 1: "one", 2:"two", 3:"three", 4:"four", 5:"five",
6:"six", 7:"seven", 8:"eight", 9:"nine", 10:"ten", 11:"eleven", 12:"twelve",
13:"thirteen", 14:"fourteen", 15:"fifteen", 16:"sixteen", 17:"seventeen",
18:"eighteen", 19:"nineteen", 20:"twenty",30:"thirty",40:"forty",50:"fifty"}
h,m=map(int,input().split())
if h<=20:
if m==0:
print(dit[h],"o'clock")
elif m<=20:
print(dit[h],dit[m])
else:
print(dit[h],dit[m//10*10],dit[m%10])
else:
if m==0:
print(dit[h//10*10],dit[h%10],"o'clock")
elif m<=20:
print(dit[h//10*10],dit[h%10],dit[m])
else:
print(dit[h//10*10],dit[h%10],dit[m//10*10],dit[m%10])