코딩테스트/프로그래머스 기초 트레이닝

[출력 문제] 자바스크립트로 테스트 입력값 받기 (Node.js)

dev_swH 2023. 5. 18. 22:58

프로그래머스의 코딩테스트는 보통 solution 함수 내부의 알고리즘 로직만 작성하면 알아서 동작하도록 코드가 짜여져 있는데,

프로그래머스 테스트 중 출력 문제와 백준, 구름 코딩테스트는

아래와 같이 테스트 케이스를 Node.js로 입력받는 코드를 작성해야 한다.

프로그래머스 기초 트레이닝을 최신순으로 정렬해두면 첫 번째 문제가 바로 출력 문제여서ㅋㅋㅋㅋ동공지진하며 뒤로 가기를 눌렀던 기억이 있다...^.T

 

https://velog.io/@leenzy/readline-%EB%AA%A8%EB%93%88-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0

 

readline 모듈 사용하기

Node.js로 백준 문제를 풀 때 자주 사용되는 readline 모듈의 기본적인 내용을 다뤄보았습니다. 모듈은 커녕 기본 문제에 손도 대지 못해 백준으로 문제푸는걸 포기했던 과거의 저에게 바칩니다.

velog.io

 

위 블로그가 기초 지식 없는 상태에서 이해하기 쉽도록 정리가 잘 되어있어서

블로그 내용을 토대로 내가 바로 꺼내볼 수 있도록 코드를 작성해둔다.

☆ readline은 process.stdin에서 한 번에 한 줄씩 데이터를 읽어주는 인터페이스를 제공하는 모듈.

const readline = require('readline');  // require : 모듈을 불러오는 함수
const rl = readline.createInterface({  // createInterface : 인터페이스 생성
    input: process.stdin,
    output: process.stdout
});

rl.on('line', function (str) {  // line 이벤트 : 입력받는 값을 한 줄씩 읽어 문자열 타입으로 전달하는 역할
    console.log(str);
    rl.close();  // 입력 끝났다고 종료 이벤트를 주는 것. 인터페이스를 종료함으로써 무한히 입력받는 것을 방지
}).on('close',function(){  // close 이벤트 : 더이상 입력되는 값이 없을 때 실행되는 이벤트
    process.exit();  // 프로세스 종료
});

 

나중에 서버를 다루기 위해 Node.js를 공부할 때는 이 부분이 조금 더 쉽게 다가오지 않을까 희망을 가져본다.

 

+)

https://lakelouise.tistory.com/140

 

[Node.js] 자바스크립트 콘솔에서 입력 받는 방법

🎯 Node.js 콘솔창 입력받기 백준에서 알고리즘 문제를 풀 때 자바스크립트 입력받는 방법을 알아보자! 📝 한 줄 값 입력받기 자바스크립트에서는 readline 모듈을 이용하면 콘솔을 통해 값을 입력

lakelouise.tistory.com

이 글도 굉장히 정리가 잘 되어있어서 참고하기 좋다!