Algorithm/Baekjoon

백준 ) 2884번: 알람 시계 [JAVA/자바] - 오늘의 TIL

그리밍밍 2023. 6. 8. 23:46

https://www.acmicpc.net/problem/2884

 

2884번: 알람 시계

상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만,

www.acmicpc.net

⚠️ 주의하기

- 24시간 표현 사용한다.

- 불필요한 0은 사용하지 않는다.

 

👇풀이

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int A, B, N;
        A = sc.nextInt();
        B = sc.nextInt();
        sc.close();

        if (B < 45) {
            A--;
            N = 60 - (45 - B);
            if (A < 0) {
                A = 23;
            }
            System.out.printf("%d %d", A, N);
        }

        else {
            N = (B - 45);
            System.out.printf("%d %d", A, N);
        }

    }
}

 

 

우선 두 수를 입력받는다 (Scanner 사용 /  A : 시,  B : 분)

그리고 if문을 사용하여

입력받은 분(minute)이 45보다 작으면 시(hour)에 -1 해주고 분(minute)에는 60 - (45 - 입력받은 분(minute)) 을 해준다.

아닐경우 입력받은 분(minute)에 -45 를 해주면 된다.

또한 시(hour)가 0보다 작아질 경우 시(hour) 을 23으로 수정해준다. (음수가 되기 때문)

 

728x90