반응형

조건은 분에 -45분을 해야된다는거다
그에 맞게 출력해보자
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int h = sc.nextInt();
int m = sc.nextInt();
if (m-45 < 0) { //분값에서 45분을 뺄경우에 0보다 작으면 시간을 내린다
m+= 15; // 시간을 내릴경우 분에 +60분을 추가해줘야하는데 45분을 빼야하니 +15만 해준다 ( m+= 60-45 와같다 )
if(h-1<0 ) { //시간을 내릴경우 0보다 작으면 24시간을 추가해준다
h += 23;//시간을 내릴때 0보다 작으면 24시간을 추가해줘야한다 하지만 1시간을 빼야하니 23시간만 더해준다 (h += 24-1 와 같다)
}else {
h--; //시간이 1을 빼도 0보다 큰경우엔 그냥 뺀다
}
}else {
m -= 45; // 분이 45를 빼도 0보다 큰경우엔 그냥 뺀다
}
System.out.println(h+" "+m);
}
}
정리하자면
1. 분(m)에 -45를 할경우 0이되면 시간(h)값을 -1 내리고 분(m)을 +60분 해준뒤 -45를 뺀다
2. 시간값을 -1할때 0보다 작으면 +24시간을 해주고 -1시간을 한다
반응형
'공부 > 알고리즘' 카테고리의 다른 글
[백준 알고리즘] 10952 A+B - 5 (0) | 2023.01.18 |
---|---|
[백준 JAVA] 2525 오븐시계 (0) | 2023.01.08 |
[백준 JAVA] 14681 사분면 고르기 (0) | 2023.01.06 |
[백준 JAVA] 2753번 윤년구하기 (0) | 2023.01.06 |
댓글