일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 백준문제풀이
- 개발자필독서
- 실용주의프로그래밍
- 캐럿마켓클론
- 이펙티브타입스크립트
- 2월기념일을위해서달리자
- 개발자
- 시작
- 북클럽
- 프로그래머스
- 실용주의프로그래머
- 자바스크립트스터디
- 개발자필독서?
- 노마드코더
- 1931번문제
- 클린코드
- 코딩
- 노마드북클럽
- CSS
- 그리디알고리즘
- 이벤트위임예제
- 취업준비중
- 11399번문제
- 취업준비중..
- 리액트의탄생
- JS비동기처리
- JavaScript
- 노개북
- 프론트엔드 개발을 위한 자바스크립트 (feat. VanillaJS)
- 이벤트위임
- Today
- Total
파카
백준 문제 풀이 관련 본문
백준에서 JavaScript로 문제를 풀면서 준비를 하려고 하다보니
백준은 프로그래머스와는 다르게 입출력을 제공해주지 않는다.
(그렇다보니 메모리 문제도 있고 JS로는 풀 수 없는 문제가 있다고 한다..)
본인이 다 입출력 코드를 짜야하는데
내용 정리가 필요해서 기록에 남겨놓으려고 한다.
- 백준에서 JS 로 문제를 풀 경우 Node.js 를 선택하고 풀면 된다.
많은 블로그에서 설명하고 있지만 Template 을 제대로 기억하고 활용하기 위해서 기록에 남겨두려고 한다.
아래의 2가지는 모두 console.log를 통해 값을 출력하면 된다.
Readline
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.on('line', function(line) {
console.log(line); //입력 값을 처리할 callback 내용 기재
}).on("close", function() {
// 출력
});
// 위 내용을 활용하면
// 값을 받을 배열 선언
const input = [];
require('readline')
.createInterface(process.stdin, process.stdout)
.on('line', function (line) {
input.push(line.trim()); // trim은 좌우 공백을 없애주는 함수이다. 사용여부는 때에 따라?
})
.on('close', function () {
// input 값에 대한 처리
});
fs 모듈
readFile()
// callback으로 반환한다 (비동기)
fs.readFile(filename, [options], callback)
readFileSync()
fs.readFileSync(filename, [options])
var fs = require("fs")
// 문자 하나만 입력받을 경우
var input = fs.readFileSync("/dev/stdin").toString()
// split을 통한 한칸 띄어쓰기로 구분
// input[0], input[1] 배열에서 꺼내쓰면 된다.
var input = fs
.readFileSync("/dev/stdin")
.toString()
.split(" ")
//
var input = fs
.readFileSync("/dev/stdin")
.toString()
.split("\n")
// 숫자값
// Number로 바로 변경하는 방법도 있어보인다.
var input = fs
.readFileSync("/dev/stdin")
.toString()
.split(" ")
.map(function(a) {
return +a
})
기본적인 것들
추가로 계속 찾아보면서 보고 있는 것들 자주 들락날락 할 거 같아서 남겨놓는다
위와 같은 여러 입출력을 사용하여 문제를 풀더라도
여러 에러를 마주하게 되는데 검색을 통해 알게된 여러 블로그를 기록에 남겨놓으려고 한다.
https://tesseractjh.tistory.com/39
: 예제 정리
Node.js로 백준(BOJ) 문제 풀 때 유의할 점들
백준에서 Node.js로 입력을 받는 방법은 크게 두 가지가 있다. 첫 번째는 readline 모듈을 사용하는 것이고, 두 번째는 fs 모듈을 사용하는 것이다. (이 글에서는 fs 모듈에 대해서만 다루겠다.) Python으
tesseractjh.tistory.com
https://hanch-dev.tistory.com/4
: 에러 정리
[백준] Node.js 알고리즘 풀때 주의 사항
21-06-04 업데이트 이 글은 제가 문제를 풀다가 추가적인 주의점을 발견활 경우 지속적으로 추가될 예정입니다. 저는 그나마 자신있는 언어가 JavaScript여서 알고리즘 사이트에서는 주로 Node.js, JavaS
hanch-dev.tistory.com
출처
: 백준 Node.js 입출력 정리
: 백준 알고리즘 Node.js 입출력 정리
: [Node.js]표준 입력 받기(readline)
: [BOJ] 백준에서 Node.js 입력을 Python처럼 쉽게 받는 법
'프로그래밍 > 문제풀이' 카테고리의 다른 글
Greedy, 백준 : 5585 문제, 2839 문제 (0) | 2021.11.30 |
---|---|
백준 : 9095번 1, 2, 3 더하기 (0) | 2021.11.29 |
프로그래머스, 괄호 변환 (2020카카오) (0) | 2021.11.18 |
프로그래머스, 가장 큰 수 (0) | 2021.11.16 |
프로그래머스 h-index (0) | 2021.11.12 |