출처
백준 온라인 저지
2884번: 알람 시계
상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, ��
www.acmicpc.net
문제
원래 설정되어 있는 알람 시간에서 45분 앞서는 시간을 구하는 프로그램을 작성해라
예시 : 10 10 -> 9 25
풀이
입력값 {H : 시간, M : 분}
두 가지의 경우의 수를 생각해 주시면 됩니다.
첫 번째 : M에서 45를 뺀 값이 음수일 경우
두 번째 : H값이 음수일 경우
먼저 M에서 45를 뺀 값을 구하고 그 값이 0보다 작을 경우 45분 뺀값 + 60이 M값이 되고 H값을 1 빼 줍니다.
이때 만약에 1을 뺀 H값이 -1일 경우 23이 됩니다. (0에서 1을 뺀 시간이므로)
코드
let input = require('fs').readFileSync('dev/stdin').toString().split(' ');
let hour = Number(input[0]); // Hour
let minute = Number(input[1]); // Minute
minute -= 45;
if (minute < 0) {
minute += 60;
hour--;
if (hour === -1) {
hour = 23;
}
}
console.log(hour + ' ' + minute);