[SWEA] 시간 개념

문제 보러가기

제한사항

현재 시각이 약속 시각보다 빠르다.

첫번째 생각

분 초가 마이너스가 되지않게끔만 조심해서 계산해준다.

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import java.util.Scanner;

public class Solution {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int T = sc.nextInt();
		for(int tc=1;tc<=T;tc++) {
			String s = sc.next();
			String[] tmp = s.split(":");
			int[] A = new int[3];
			for(int i=0; i<3; i++) {
				A[i] = Integer.parseInt(tmp[i]);
			}
			
			s = sc.next();
			tmp = s.split(":");
			int[] B = new int[3];
			for(int i=0; i<3; i++) {
				B[i] = Integer.parseInt(tmp[i]);
			}
			
			int[] C = new int[3];
			
			B[0] += 24;
			if ( A[2] > B[2] ) {
				B[1] -= 1;
				B[2] += 60;
				C[2] = B[2] - A[2]; 
			} else {
				C[2] = B[2] - A[2];
			}
			
			if ( A[1] > B[1] ) {
				B[0] -= 1;
				B[1] += 60;
				C[1] = B[1] - A[1];
			} else {
				C[1] = B[1] - A[1];
			}
			C[0] = B[0] - A[0];
			System.out.printf("#%d %02d:%02d:%02d\n",tc,C[0]%24,C[1]%60,C[2]%60);
		}
	}
}