1916 - Banco de Horas de Jaiminho

  • ID: 1916
  • IdBecrowd: 1916
  • Tags: ad-hoc, geometria
  • Nível: 7
  • Tempo Limite: 2 segundos
  • Memória: 200 MB
  • Categoria: Ad-Hoc
  • Autor: URI Online Judge

Descrição

A empresa em que o carteiro Jaiminho trabalha tem uma política de banco de horas bem interessante. Toda vez que um funcionário inicia suas atividades ele deve registrar a sua chegada na “máquina de ponto” recebendo um pequeno comprovante, da mesma forma que toda vez que o funcionário finaliza suas atividades ele também deve registrar o término. A maioria dos funcionários nunca teve a curiosidade de saber como a “máquina do ponto” processa a quantidade de horas trabalhadas, mas Jaiminho além de ser um excelente funcionário é bastante curioso.

Ao registrar a sua digital (no primeiro dia de trabalho) Jaiminho foi informado por uma senhora que trabalha no departamento de Recursos Humanos que existe uma tolerância de 5 minutos tanto na entrada como na saída. A jornada de trabalho de Jaiminho consiste em dois períodos, das 08:00 hrs às 12:00 hrs e das 14:00 hrs às 18:00 hrs (contabilizando 8 horas trabalhadas por dia), sendo assim, se ele chegar às 07:55 hrs e sair às 12:03 hrs, a “máquina do ponto” perceberá que ele respeitou a tolerância e não registrará nenhum minuto a mais ou a menos no banco de horas de Jaiminho, porém se na segunda parte do seu expediente, ele registrar a sua entrada às 13:54 hrs e sua saída às 18:02 hrs, a máquina perceberá que ele abusou da tolerância e então adicionará 6 minutos extras no seu banco de horas.

Como Jaiminho é um funcionário dedicado e sempre tenta evitar a fadiga, ele montou uma planilha com o registro (horário de entrada e saída) de todos os dias trabalhados, mas infelizmente ele não é um programador e precisa de sua ajuda para simular o banco de horas da empresa em que ele trabalha.

Entrada

A primeira linha de entrada contém um único inteiro QT (1 ≤ QT ≤ 100) indicando a quantidade de casos de teste que vem a seguir. Cada caso de teste inicia com uma linha contendo um único inteiro N (1 ≤ N ≤ 10³) que representa a quantidade de registros na planilha de Jaiminho, seguem N linhas, cada linha contendo a descrição dos horários de entrada e saída no seguinte formato ” A1:B1 A2:B2 | C1:D1 C2:D2 “, onde A1 e B1 representam respectivamente as horas e os minutos de entrada do primeiro período de trabalho no dia, A2 e B2 representam respectivamente as horas e os minutos de saída do primeiro período de trabalho do dia, C1 e D1 representam respectivamente as horas e os minutos de entrada do segundo período de trabalho do dia e C2 e D2 representam respectivamente as horas e os minutos de saída do segundo período de trabalho no dia. Jaiminho garante que nunca dormiu no trabalho, que ( A1:B1 ≤ A2:B2 && C1:D1 ≤ C2:D2 ) e que as horas e os minutos no seu banco de horas nunca ultrapassarão 2 dígitos. Lembre-se, 1 dia tem 24 horas e 1 hora tem 60 minutos.

Saída

Para cada caso de teste, seu programa deverá imprimir uma linha com a quantidade de horas e minutos que atualmente estão registradas no banco de horas simulado para Jaiminho no seguinte formato: ” S HH:MM “, onde S pode ser o sinal”-“, representando horas negativas no banco, ou sinal”+” representando horas positivas no banco, HH representa a quantidade de horas e MM representa a quantidade de minutos do banco de horas simulado.

Caso HH:MM seja igual a 00:00 , você pode considerar como horas positivas no banco.

Exemplos

Exemplo de Entrada

3

1

07:55 12:03 | 13:54 18:02

3

08:30 11:45 | 14:01 18:52

07:55 11:55 | 13:54 17:58

08:01 12:11 | 14:03 18:12

1

08:25 12:00 | 14:06 18:01

Exemplo de Saída

+ 00:06

+ 00:36

- 00:31
Back to top