본문 바로가기
Algorithm

백준 - 2884번 알람시계

by 호강하는 지해 2024. 10. 13.
728x90

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

 

 

 

 

package baekjoon.level_2;

import java.util.Scanner;

public class A_2884 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int H = sc.nextInt();
        int M = sc.nextInt();

        if (M < 45) {
            if (H == 0) H = 24;
            System.out.println(H - 1 + " " + (60 - 45 + M));
        } else {
            System.out.println(H + " " + (M - 45));
        }
    }
}

내 문제 풀이부터 공개 !

 

정말 쉬운 문제지만, 내가 고민 했던 점은 한 시간은 60분인데 사용자가 입력한 분이 45분보다 작으면 어떻게 계산할지였다.

그렇지만 하나도 어렵지 않다 !! 60분에서 45분을 먼저빼고 사용자가 입력한 분을 더해주면 된다.

예를 들면 10시 10분을 입력했다면, 60 - 45 + 10을 해주면 25다. 시간인 10에서 1만 빼주면 9 : 25 !

손쉽게 원하던 45분 전 시간을 얻을 수 있다.

 

그리고 사용자가 입력한 시간이 00:10 이런식으로 시간이 0일 수도 있으니, 이럴 땐 시간에 24를 넣어서 계산해주면 된다!

 

 

 

알고리즘 문제 풀이 너무 재밌다... 점점 어려워지겠지? 그렇지만 풀어주마

 

728x90