출처
백준 온라인 저지
문제
원래 설정되어 있는 알람 시간에서 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);