백준알고리즘/if문

백준알고리즘 2884번 알람시계 - node.js

크레리누 2021. 11. 23. 19:08

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

 

2884번: 알람 시계

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

www.acmicpc.net

 

내가 쓴 정답

 

const input = require('fs').readFileSync('/dev/stdin').toString().split(' ');
const ONE_HOUR_TO_MINUTES = 60;

const hour = parseInt(input[0]);
const minutes = parseInt(input[1]);

const minusMinutes  = minutes - 45; 
let resultHours = 0;
let resultMinutes = 0;

//-45를 한다
if(minusMinutes < 0){
    //음수일 경우 이 음수를 양수 시간의 숫자를 -1하고, 분의 숫자 60에서 빼준다.
    resultHours = (hour === 0)? 23 : hour - 1; 
    resultMinutes = ONE_HOUR_TO_MINUTES - Math.abs(minusMinutes);
}else{
    resultHours = hour;
    resultMinutes = minusMinutes;
}

console.log(`${resultHours} ${resultMinutes}`);