시계 바늘
시간 제한5초메모리 제한128 MB
주어진 시각 이후에 초침이 시침과 분침 사이 각을 이등분하고 세 바늘이 겹치지 않는 가장 이른 시각을 구합니다.
문제
초침, 분침, 시침이 모두 매끄럽게 돌아가는 아날로그 시계가 있다. 초침과 나머지 두 바늘이 이루는 두 각도를 각각 측정할 수 있다.
주어진 시각과 같거나 그보다 뒤인 시각 중에서 "어떤 두 바늘도 겹치지 않는다"와 "초침과 나머지 두 바늘이 이루는 두 각도가 같다"를 처음으로 동시에 만족하는 시각을 구하는 프로그램을 작성하시오.

그림 D.1. 초침과 나머지 두 바늘이 이루는 각도
시계는 12시간제로만 한정되지 않는다. 시간제 시계의 시침은 시간에 한 바퀴를 돈다. 분침은 그대로 한 시간에 한 바퀴, 초침은 1분에 한 바퀴를 돈다. 0:0:0(자정)에는 세 바늘이 모두 똑바로 위를 향한다.
입력
입력은 여러 데이터셋으로 이루어진다. 각 데이터셋은 한 줄에 네 정수 , , , 가 공백으로 구분되어 주어진다. 는 시계가 시간제라는 뜻이고, , , 는 각각 지정된 시각의 시, 분, 초다.
, , , 이다.
입력의 끝은 0 네 개로 이루어진 줄로 표시된다.

그림 D.2. 시간제 시계의 예 (6시간제 시계와 15시간제 시계)
출력
데이터셋마다 지정된 시각과 같거나 그보다 뒤인 시각 중에서 "어떤 두 바늘도 겹치지 않는다"와 "초침과 나머지 두 바늘이 이루는 두 각도가 같다"를 처음으로 만족하는 시각 를 한 줄에 출력한다.
가 ::(시 분에서 초가 지난 시각)이면, 음이 아닌 네 정수 , , , 를 공백으로 구분해 출력한다. 여기서 는 를 나타내는 기약분수다. 가 0을 포함해 정수라면 는 1로 한다.
시각은 시간으로 나눈 나머지로 나타낸다. 즉 :59:59에서 1초가 지난 시각은 :0:0이 아니라 0:0:0이다.