[백준] - 단계별로 풀어보기(조건문) 2884

김민경·2022년 4월 2일
0

백준

목록 보기
5/39

백준 2884번

알람 시계

문제 출처 https://www.acmicpc.net/problem/2884


내가 작성한 코드

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int h, m;
		h = sc.nextInt(); //시
		m = sc.nextInt(); //분

		if(m<45) {
			h=h-1;
			m= 60+(m-45);
			if(h<0) {
				h=23;
			}
			System.out.println(h+" "+m);
		}
		else {
			System.out.println(h+" "+(m-45));
		}
	}
}

접근 방법

45분씩 일찍 일어나기 위해서는 분에서 45분을 빼준다.
ex) 10시 50분 -> 50분 - 45분 = 5분
=>10시 5분

하지만, 분이 45분 이하일 경우에는 "시"(h-1)도 같이 줄어야한다.
ex) 10시 10분 -> 10분 - 45분 = -35분 => 60-35 = 25분
=> 9시 25분
또한, 24시간 표현을 사용하기 때문에 0시 시간대 45분전은 23시이다. 그러므오 h<0일 경우 h=23으로 고정한다.
ex) 0시 30분 -> 23시 45분

0개의 댓글

관련 채용 정보