Desafio
Escreva o código mais curto que possa somar todas as durações de tempo que aparecem no stdin. O programa deve considerar apenas as cadeias que correspondem a um dos seguintes padrões e ignorar o restante.
HH:MM:SS (it will be interpreted as HH hours, MM minutes and SS seconds)
H:MM:SS (it will be interpreted as H hours, MM minutes and SS seconds)
MM:SS (it will be interpreted as MM minutes, SS seconds)
M:SS (it will be interpreted as M minutes, SS seconds)
exemplos de seqüências de caracteres que correspondem aos padrões enumerados:
12:00:01
2:03:22
00:53
9:13
A saída deve ter a forma
HHh MMm SSs (that means HH hours, MM minutes and SS seconds with non-zero-padding)
Exemplo
STDIN
Veja o vídeo de boas-vindas.
Vídeo: 10:37 min.
Veja a introdução em vídeo do curso.
Vídeo: 3:30 min. Veja o vídeo de como usar a Visão geral da lição.
Vídeo: 9:13 min.
Veja a visão geral em vídeo de como usar o sistema Epsilen para compartilhar seu trabalho.
Vídeo: 03:15 min.
Assista ao vídeo para aprender sobre a Avaliação de prontidão acadêmica do estado do Texas (STAAR).
Vídeo: 1:05:26 min.
STDOUT
1h 32m 1s
1h 19m 18s
a saída? 37+30+13+15+26==121
, 10+3+9+3+5==30
, 1==1
, Por isso espero 1h 32m 01s
. O que há de errado nessa lógica? Além disso, esse formato de saída é o esperado, não é?
10:4:56
? De acordo com a especificação atual, eles devem ser tratados como4m 56s
parte10
que será ignorada. A mesma pergunta sobre10:12:7
isso significa10m 12s
ignorar7
? Ou o manuseio de tais strings pode ser definido como implementação?