https://www.acmicpc.net/problem/2884
45분 전의 시간을 구하면 되는 문제
입력받은 분을 45(m) 기준으로 45보다 작으면 시(h)를 -1 하고 45보다 크면 분(m)에 -45 하면 된다
시(h)가 0보다 작아질 경우 시(h)를 23으로 수정한다
+ 분은 60분이니까 입력값이 45보다 작을 경우엔 (45-입력값) 만큼 60에서 빼주면 된다.
* 60 - (45 - 입력값)
1 ) 45분보다 작은지 확인 : if ( m < 45 )
2 - 1 ) 시(h)가 0보다 작은지 확인 : if (h < 0 )
1 - 2 ) 1단계 조건 외 : else
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str, " ");
int h = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
if(m < 45){
h--;
m = 60 - (45 - m);
if(h < 0){
h = 23;
}
System.out.println(h + " " + m);
} else {
System.out.println(h + " " + (m - 45));
}
}
}
이렇게 할 수 있다.
'study > algorithm' 카테고리의 다른 글
[알고리즘] 별 찍기2 - 백준 2439번 (0) | 2024.06.18 |
---|---|
[알고리즘] 별 찍기1 - 백준 2438번 (0) | 2024.06.18 |
[알고리즘] 주사위 세개 - 백준 2480번 (0) | 2024.06.17 |
[알고리즘] 오븐 시계 - 백준 2525번 (0) | 2024.06.14 |
[알고리즘] 윤년 - 백준 2753번 (0) | 2024.06.14 |