https://www.acmicpc.net/problem/3029
입력받은 시간을 모두 초로 바꾼 후, 터질 시간이 현재 시간보다 작을 경우 다음 날이라는 말이므로 24시간을 초로 바꾼 86400초 - 현재 시간 + 터질 시간이 기다려야 하는 시간이다.
#include <cstdio>
int main()
{
int ct[3], tt[3];
scanf("%2d:%2d:%2d\n%2d:%2d:%2d", &ct[0], &ct[1], &ct[2], &tt[0], &tt[1], &tt[2]);
int cts = ct[0] * 3600 + ct[1] * 60 + ct[2];
int tts = tt[0] * 3600 + tt[1] * 60 + tt[2];
int ans = (cts < tts) ? tts - cts : 86400 - cts + tts;
printf("%02d:%02d:%02d", ans / 3600, ans % 3600 / 60, ans % 60);
return 0;
}
'온라인저지' 카테고리의 다른 글
[BOJ] 13900번: 순서쌍의 곱의 합 (0) | 2018.07.27 |
---|---|
[BOJ] 11508번: 2+1 세일 (0) | 2018.07.27 |
[BOJ] 9095번: 1, 2, 3 더하기 (0) | 2018.07.27 |
[BOJ] 3042번: 트리플렛 (0) | 2018.07.27 |
[BOJ] 11758번: CCW (0) | 2018.07.27 |
[BOJ] 15595번: 정답 비율 계산하기 (0) | 2018.07.27 |
댓글