\(@^0^@)/

[JS] 백준 문제 풀 때, 값 입력 받는 법. 본문

알고리즘

[JS] 백준 문제 풀 때, 값 입력 받는 법.

minjuuu 2021. 9. 10. 23:40
728x90

백준에서 JS로 값 입력받는 방법을 알아야 한다.
다른 프로그래밍 언어의 경우, 잘은 모르지만 scanf( ), cin( ), scan.next( ), input( ) 등을 사용한다고 하는데
JS는 이런 기능을 사용하기 위해서는 fs모듈 또는 readline 모듈을 사용해야 한다.

let fs = require('fs');


Node.js로 입력받는 법은 두 가지가 있는데
fs모듈이 동작속도가 더 빠르다고 하여, 우선은 fs모듈에 대해서만 알아보고 사용할 예정이다.


🤔 Fs모듈이란? FileSystem의 약자로, 직접 입력 파일을 읽어와서 처리.

백준 1000번 문제를 같이 보며 정리해보자.

백준 1000번 문제
백준 1000번 정답


한 줄의 값을 입력받을 때 공백을 기준으로 문자를 나누어서 값을 저장하고, 값을 사용할 때는 배열의 인덱스를 이용.

// "Hello World"라는 문자를 입력할 경우의 예시

let fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split(' ');

input[0] // Hello
input[1] // World

 

배열에 저장된 값을 사용하기 용이하도록 작성하는 예시

// "Hello World"라는 문자를 입력할 경우의 예시

let fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split(' ');
let [a, b] = input

a // Hello
b // World

 

여러 줄의 값들을 입력받을 때

let input = require('fs').readFileSync('/dev/stdin').toString().split('\n');

 

입력받는 값들을 모두 String에서 Number로 바꿀 때

let input = require('fs').readFileSync('/dev/stdin').toString().split(' ').map(v => +v);

※ 참고 : https://tesseractjh.tistory.com/39

※ 참고 : https://helicopter55.tistory.com/38

※ 참고 : https://help.acmicpc.net/language/info

728x90