가상 토끼 (Small)
시간 제한5초메모리 제한512 MB
먹이를 줄 수 있는 시간대에만 최소 횟수로 먹이를 주면서 마지막 식사 후 X초가 지나기 전에 다음 먹이를 줍니다.
문제
앨리스가 가상 애완 토끼를 샀다. 토끼는 화면 위를 뛰어다니고, 버튼을 누르면 그 자리에서 먹이를 먹는다. 앨리스는 토끼를 아끼지만 바빠서 돌보는 데 시간을 많이 쓰고 싶지 않다. 그렇다고 먹이를 너무 오래 주지 않으면 토끼가 죽고, 앨리스는 게임에서 진다.
앨리스는 매일 시각 에 일어나고, 시각 에 출근하고, 시각 에 집으로 돌아오고, 시각 에 잠자리에 든다. 일하는 동안과 자는 동안, 즉 구간 와 안에서는 먹이를 주지 못한다. 시각 와 는 먹이를 줄 수 없는 시각이고, 시각 와 는 먹이를 줄 수 있는 시각이다. 나머지 모든 초에 앨리스는 버튼을 눌러 즉시 먹이를 주거나, 누르지 않는다.
토끼는 마지막으로 먹이를 먹은 뒤 초가 넘도록 아무것도 먹지 못하면 죽는다.
지금은 0일 00:00:00이고, 택배 기사가 토끼를 막 배달했다. 기사는 앨리스가 자고 있어도 00:00:00에 버튼을 한 번 누르고 떠난다. 앨리스는 일 00:00:00에도 토끼가 살아 있기를 바란다. 토끼를 살려 둘 수 있다면, 앨리스가 먹이를 줘야 하는 최소 횟수는 몇 번인가?
정리하면 다음과 같다. 모든 초에 0부터 번호를 붙여 0일 00:00:00을 0초, 일 00:00:00을 초라고 하자. 앨리스가 먹이를 준 초를 순서대로 이라 하고, 택배 기사가 버튼을 누른 순간을 이라 하자. 일 00:00:00에 토끼가 살아 있을 조건은 다음 두 가지다.
- 인 모든 에 대해
인 는 그날의 시각이 또는 에 들어가는 초여야 한다. 의 최솟값을 구하라.
입력
첫 줄에 테스트 케이스의 수 가 주어진다. 이어서 개의 테스트 케이스가 주어지고, 각 테스트 케이스는 6줄로 이루어진다. 앞의 다섯 줄에는 시각 , , , 와 길이 가 "hh:mm:ss" 형식으로 한 줄에 하나씩 주어진다. 마지막 줄에는 정수 가 주어진다.
제한
- 앨리스는 언제나 자정 전에 잠자리에 들고 자정이 지난 뒤에 일어난다. 즉 , , , 는 같은 날 안에서 순서대로 증가한다.
출력
각 테스트 케이스마다 "Case #x: y" 형식으로 한 줄씩 출력한다. 는 1부터 시작하는 테스트 케이스 번호이고, 는 앨리스가 먹이를 줘야 하는 최소 횟수다. 일 00:00:00에 토끼를 살려 둘 방법이 없으면 는 이다.
힌트
예제의 첫 번째 테스트 케이스에서는 앨리스가 매일 08:00:00과 20:00:00에 먹이를 주면 된다.
예제의 두 번째 테스트 케이스에서는 앨리스가 0일에 일어나기도 전에 토끼가 죽는다.