[BOJ] 자바스크립트로 백준풀기

zmin·2022년 4월 11일
0

기본 구조

다른 언어와 달리 node.js를 이용하여 파일을 읽어오는 코드가 추가적으로 필요

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

// 로컬 테스트
let input = fs.readFileSync('./input.txt').toString().split(' ');

...

console.log(result);

이때 input은 string의 배열이 되므로 숫자로 사용하고 싶다면 타입 변환을 해서 사용해야함
-> 암묵적 타입 변환 이용하면 편함 '123' * 1 = 123 같은...

sort()

알고리즘 문제 풀때 정말 많이 쓸 것 같은 메소드인데 다른 언어들처럼 그냥 쓰면 예상치 못한 값이 나옴...

arr.sort([compareFunction]);

arr 자체를 변환, 새로운 배열 X

정렬할 때 compareFunction를 따로 주지 않으면 문자열로 변환하여 유니코드를 기준으로 정렬함 → 대소문자 구분

  • compareFunction에 두 인수 a, b를 차례로 넣었을 때 양수가 반환되면 ba보다 앞에 오게 됨 → [b, a]

  • compareFunction에 두 인수 a, b를 차례로 넣었을 때 음수가 반환되면 ba보다 뒤에 오게 됨 → [a, b]

숫자 정렬

// 오름차순
arr.sort(function(a, b)  {
    return a - b;
});

sort() 메소드 뒤에 reverse()메소드를 붙이면 내림차순으로 정렬


참고

https://help.acmicpc.net/language/info
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

profile
308 Permanent Redirect

0개의 댓글