알람 시계

곽지욱·2023년 9월 6일

BOJ

목록 보기
5/69
post-thumbnail

2884번: 알람 시계

*주의할 점

  1. 24시간 표현을 사용한다
  2. 입력은 공백 한 칸을 기준으로 구분되어 입력된다.
  3. 출력시 불필요한 0은 사용하지 않는다.
  • 알고리즘 [접근 방법]

  • 가장 쉬운 알고리즘으로는 입력받은 분 을 45 기준으로 45보다 작으면 hour 을 -1 해주고 아닐 경우 입력받은 분에 -45을 해주면 된다.

  • 또한 hour 가 0보다 작아질 경우 hour를 23으로 수정해준다 ex) 0시 15분 > 23시 30분

  • 즉 1-1단계 : 45분보다 작은지 여부를 체크

  • 2-1 단계 : hour 가 0보다 작은지 여부

  • 1-2 단계 1단계 조건 외 여부 else


import java.util.Scanner;

public class backjun {
    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        int H = in.nextInt();
        int M = in.nextInt();

        if (M < 45){ // m 이 45 보다 작을 경우 h을 1 감소시키고 45 - m 을 한 값을 60에서 빼준다
            H--;
            M = 60 - (45 - M);
            if (H < 0){ //24시 >> 00시 10분 ? 23시 25분 h 23으로 초기화 하고 m은 위의 알고리즘
                H = 23;
            }
            System.out.println(H + " "+ M);
        }
        else {
            System.out.println(H + " " + (M - 45));
        }

        in.close();

    }
}

0개의 댓글