Lennon FE

[백준 2884번] 알람 시계 - 자바스크립트(nodejs) 본문

카테고리 없음

[백준 2884번] 알람 시계 - 자바스크립트(nodejs)

Lennon 2022. 1. 25. 23:17
728x90
반응형

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

 

2884번: 알람 시계

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

www.acmicpc.net

const fs = require('fs');
let [hour, minute] = fs.readFileSync('dev/stdin').toString().trim().split(' ').map(Number);

let time = hour !== 0 ? hour * 60 + minute - 45 : 24 * 60 + minute - 45;
let alarmHour = time >= 1440 ? 0 : Math.floor(time / 60);
time %= 60;

console.log(alarmHour, time);

삼항 연산자로 24시(0시) 처리를 쉽게 해줄 수 있다.

 

0시로 입력되면 24로 바꿔서 전체 시간을 분으로 구해주고 45분을 빼준다. (0시 10분 => 1450분 => 1405분)

 

그 후 전체 분에서 45분 뺀 값이 1440분이 넘는 지 확인하고(알람지정 시간이 0시45분 이상이면 1440분이 넘어서 alarmHour이 24가 넘을 수 있음)

1440분이 넘으면 0으로 초기화하고, 아니면 60분으로 나눈 것의 내림으로 시간을 정해준다.

그 후 나머지로 분을 정해주면 끝!

728x90
반응형
Comments