C가 M을 앞지르는 시각

시간 제한1초메모리 제한128 MB

요약
고속도로에서 관측된 다섯 번의 만남 시각이 주어질 때, C가 M을 추월하는 시각을 정확히 구한다.
난이도

보통10점 중 6점

유형
수학, 구현, 시뮬레이션, 완전 탐색
정답자
아직 제출이 없습니다

문제

세 친구 앨릭스(A), 셀리(C), 모니(M)가 각자 자기 차를 몰고 한 도시에서 다른 도시로 이동한다. 같은 시각에 이들의 멘토 딜버트(D)는 반대 방향, 즉 목적지 도시에서 출발 도시 쪽으로 차를 몰고 와 도중에 이들을 만난다. 모든 차는 같은 직선 도로 위를 달리며, 각 차는 저마다 일정한 속도로 움직인다(속도가 서로 같을 필요는 없다).

이동 중 다음과 같은 사건이 관측된다.

  • A는 시각 t1t_1에 C를 앞지르고, 시각 t2t_2에 M을 앞지른다.
  • A는 시각 t3t_3에 (서로 마주 오는) D와 만난다.
  • D는 시각 t4t_4에 C와 만나고, 시각 t5t_5에 M과 만난다.

다섯 시각은 모두 서로 다르다. C가 M을 앞지르는 정확한 시각을 구하여라.

모든 차의 속도가 일정하므로 각 차의 위치는 시간의 일차함수이다. 두 차가 '앞지르거나' '만나는' 순간은 두 차의 위치가 같아지는 순간이므로, 답은 주어진 다섯 시각으로 유일하게 결정된다.

입력

입력은 여러 개의 테스트 케이스로 이루어지며, 한 줄에 하나씩 주어진다. 각 줄에는 다섯 개의 시각 t1t_1, t2t_2, t3t_3, t4t_4, t5t_5가 공백으로 구분되어 24시간제 hh:mm:ss 형식으로 주어진다. 한 줄에 있는 다섯 시각은 모두 서로 다르며 엄격히 증가하는 순서로 나열된다. -1만 있는 줄이 나오면 입력이 끝나며, 그 줄은 처리하지 않는다.

출력

각 입력 줄마다 C가 M을 앞지르는 시각을 입력과 같은 24시간제 hh:mm:ss 형식으로 한 줄에 출력한다. 정확한 시각을 계산한 뒤 가장 가까운 초로 반올림하되, 정확히 0.5초일 때는 올림한다(예: 정확히 10:56:25.5는 10:56:26이 된다).

예제2

  1. 예제 1

    입력
    10:00:00 11:00:00 12:00:00 13:00:00 14:00:00
    10:20:00 10:58:00 14:32:00 14:59:00 16:00:00
    10:20:00 12:58:00 14:32:00 14:59:00 16:00:00
    08:00:00 09:00:00 10:00:00 12:00:00 14:00:00
    -1
    
    예상 출력
    12:00:00
    11:16:54
    13:37:32
    10:40:00
    
  2. 예제 2

    입력
    06:00:00 06:30:00 07:00:00 07:30:00 08:00:00
    -1
    
    예상 출력
    07:00:00