https://www.acmicpc.net/problem/2884
문제는 쏘쏘...... 하지만 이번엔 fs모듈이 아니라 readline 모듈을 사용해봤다.. (구글링해도 어렵다)
시간도 엄청 걸린다... C언어 계열만 하다가 너무 느려서 두번 놀람...
const readline = require("readline");
const rl = readline.createInterface({
input:process.stdin,
output:process.stdout
});
function Alarm(h, m) {
m -= 45;
if(m < 0){
m = m + 60;
h--;
if(h < 0)
h = 23;
}
console.log(h, m);
}
rl.on('line', function(line) {
let input = line.split(" ");
let inputHour = parseInt(input[0]);
let inputMinute = parseInt(input[1]);
Alarm(inputHour, inputMinute);
rl.close();
}).on('close', function() {
process.exit();
});
문제 자체는 어려운게 아니니 그렇다고 치고... readline 모듈 사용을 정리하자면
const readline = require("readline"); //readline을 require 하기
const rl = readline.createInterface({
input:process.stdin,
output:process.stdout
});
rl.on('line', function(line) { //line 단위로 읽어옵니다
let input = line.split(" "); //이번 문제는 한줄짜리라서 공백으로만 나눠줬음
// 읽어온 값을 원하는 형태로 형변환해서 정제
let x = parseInt(input[0]);
let y = parseInt(input[1]);
// 문제 해답 작성해주기
rl.close(); //readline 끝낼 때 꼭 써줘야함...
}).on('close', function() {
process.exit();
});
자꾸 런타임 에러 나서 구글링 열심히 했다......... 입력 받는게 문제보다 더 어려움..
런타임 에러가 나는 이유는 rl.on() 메서드를 쓸 때 line 별로 읽어오는게 이해가 안돼서 line의 데이터를 정제하는데 애먹었음..ㅎㅎ
'자료구조 알고리즘 > 코딩테스트 풀이' 카테고리의 다른 글
프로그래머스 Lv0 최댓값 만들기(2) (0) | 2023.02.19 |
---|---|
프로그래머스 Lv0 직각삼각형 출력하기 (0) | 2023.02.19 |
백준 5597번 과제 안 내신 분? (0) | 2023.02.16 |
백준 4344번 평균은 넘겠지 (0) | 2023.02.12 |
백준 1330번 문제, node.js로 제출하기... (0) | 2023.01.31 |