O seu programa / função, etc. terá 2 entradas. O primeiro será uma lista de quem veio à minha festa e quando. Exemplo:
Kevin 13:02
Ruby 5
Sam 3
Lisa 6
Bob 12
O que isso significa? Isso significa que Kevin chegou à minha festa primeiro (às 13:02, horário de 24 horas), depois Ruby 5 minutos depois, Sam 3 minutos depois, Lisa 6 minutos depois e Bob 12 minutos depois.
A segunda entrada será quando minha festa começar. Exemplo:
13:15
(24 horas). Sua saída deve ser a lista de pessoas que estavam atrasadas. (Qualquer pessoa exatamente dentro do prazo é boa.) Exemplos de cálculos (apenas por exemplo, não os produzem)
Kevin 13:02
Ruby 13:07
Sam 13:10
Lisa 13:16
Bob 13:28
Lisa e Bob chegaram depois 13:15
, portanto este programa deve imprimir "Lisa, Bob".
Pressupostos de entrada
- A entrada 1 sempre será um nome (regex
[A-Z][a-z]*
), depois um espaço, depois um horário de 24 horas no formuláriohours:minutes
na primeira linha, depois um nome, um espaço e um número inteiro positivo (número de minutos depois) nas próximas linhas . Sempre haverá pelo menos 1 linha. - Se desejar, você pode inserir a entrada 1 com qualquer outro caractere, em vez de uma quebra de linha.
- A entrada 2 estará no formato
hours:minutes
. - Você pode considerar suas entradas como uma sequência separada por qualquer caractere, se desejar. Isso é opcional.
- Não se preocupe com a passagem do dia. Minhas festas nunca para depois
23:59
.
Regras de saída
- A saída pode ser um valor de retorno de função ou uma sequência ecoada em STDIN, um arquivo etc. Você deve retornar uma sequência ou uma matriz / lista.
- Se você retornar uma sequência, deve ser cada pessoa que se atrasou (o pedido não importa), separada por qualquer delimitador não alfanumérico.
- Se você retornar uma matriz / lista, deve ser uma lista de todos os que estavam atrasados.
(regex [A-Z][a-z]*
)" Isso sugere que os nomes podem estar vazios?
23:59
?