2023/ 10/ 16

남성윤·2023년 10월 16일
0

학습 일지

목록 보기
260/369

백준 input 가져오기

input이 가로로 주어질 때,

ex)
0 1

const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt"
let input = require('fs').readFileSync(filePath).toString().trim().split(' ');

console.log(input) // [ '0', '1' ]

input이 세로로 주어질 때,

ex)
0
1

const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt"
let input = require('fs').readFileSync(filePath).toString().trim().split('/n');

console.log(input); // [ '0', '1' ]

/dev/stdin는 빠르지만, 백준 node.js환경에서 종종 런타임 에러를 발생시키는데, 이 때는 readline을 사용한다.

const readline = require('readline');
const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

var count = 0;
let input = [];

rl.on('line', (line) => {
    count ++;
    input.push(line);
    
    var n = Number(input[0]);
  
    if(count === n + 1){
        rl.close()
    }
});
 
rl.on('close', function () {
    console.log(input)
});
profile
안녕하세요, Blog 2022.06 ~

0개의 댓글