728x90
개요
저는 원래 파이썬으로 알고리즘 문제를 풀고 있었는데, 프론트엔드를 지망하다 보니 자바스크립트로 변경해야할거 같다는 필요성을 느끼게 되어 이제부터 알고리즘 문제풀때 자바스크립트로 풀고자 합니다.
그런데 백준에서 자바스크립트는 파이썬처럼 쉽게 제출이 되지않고 일련의 작업(?)을 거쳐 제출을 해야합니다.
vscode 에서...
우선 vscode에서
npm install fs
을 통해 fs를 설치해줍니다.
컴파일을 위해서 터미널을 실행시켜줍니다. (Ctrl + `)
실행시키는 방식은
node 경로
// node \BoJ\Javascript\18108.js
// node C:\Coding\BoJ\Javascript\18108.js
상대경로로도 절대경로로도 node 명령어를 붙이면 실행이 됩니다.
우선, 같은 폴더에 입력값을 넣어줄 txt파일을 생성해줍니다.
(예제.txt)
2541
1. 입력값이 1개 일 때
let input = require('fs').readFileSync('예제.txt').toString().split('\n')
let count = Number(input[0])
console.log(input)
console.log(count)
input 이라는 변수로 예제라는 txt파일을 읽어오는 코드입니다.
input을 보면 배열에 문자열형태로 예제 파일을 읽어오는데요. 이 값들을 정수형으로 사용할거면 Number등과 같은 메서드를 이용해 타입을 변환 시켜줘야합니다.
2. 입력값이 여러개 일때
(예제.txt)
3
2 2
1 5
13 29
let fs = require('fs');
let input = fs.readFileSync('예제.txt').toString().split('\n');
console.log(input)
let count = Number(input[0]);
let numbers = [];
for (let i = 1; i < input.length; i++) {
if (input[i] !== '') {
numbers.push(input[i].split(' '));
}
}
console.log(count)
// 3
console.log(numbers)
// [['2','2\r'] , ['1','5\r'], ['13','29']]
이런식으로 출력해주게 되면 됩니다.
728x90
'BOJ' 카테고리의 다른 글
BOJ : 1475 방번호 (JS) (1) | 2023.03.04 |
---|---|
BOJ : 10807 개수세기 (JS) (0) | 2023.01.23 |
BOJ : 2563 색종이 (파이썬) (0) | 2022.12.04 |