자바/백준

[백준 2884] 알람 시계

슈슈버거 2022. 7. 14. 21:29

문제

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

 

2884번: 알람 시계

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

www.acmicpc.net


내가 작성한 코드

import java.util.*;

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

        String before = sc.nextLine();
        String[] bef = before.split(" ");
        int[] btime = new int[2];

        for(int i = 0; i<2; i++){
            btime[i] = Integer.parseInt(bef[i]);
        }

        if(btime[0] == 24){
            btime[0] = 0;
        }
        if(btime[1] == 60){
            btime[1] = 0;
        }

        int min = btime[1] - 45;
        int hour = btime[0];

        if(min<0){
            min += 60;
            hour -= 1;
            if(hour<0){
                hour += 24;
            }
        }

        System.out.println(hour+" "+min);
    }
}

첫째 줄에 시간과 분이 모두 주어진다길래 문자열로 입력받은 다음 split을 이용해 배열에 각각의 값을 저장하도록 했다

시간과 분이 형식에 맞게 출력될 수 있게 if문도 사용해주었고

 

주어진 시간의 분 부분에서 45분을 빼주고 그 값의 크기에 따라 hour에는 어떤 연산을 할지 if문을 이용해 작성해주었다

'자바 > 백준' 카테고리의 다른 글

[백준 2480] 주사위 세개  (0) 2022.07.14
[백준 2525] 오븐 시계  (0) 2022.07.14
[백준 14681] 사분면 고르기  (0) 2022.07.14
[백준 4153] 직각삼각형  (0) 2022.07.13
[백준 2753] 윤년  (0) 2022.07.12