sm 기술 블로그
76. 2752 (수 정렬하기2) 본문
let input = require("fs").readFileSync(0).toString().trim().split("\n").map(Number);
input.shift();
console.log(input.sort((a, b) => a - b).join("\n"));
input.shift()
값의 기준을 오른쪽으로 이동 시킨다.
예를들어
5
5
4
1
2
3
을 입력 받으면 input shift()를 통해 값은
5
4
1
2
3
으로 된다.
자바스크립트에서는 sort를 문자로 정렬을 한다. 때문에 12 21 5 가 있다면 5가 가장 작지만 12 , 21 , 5순으로 정렬한다.
그것을 방지하기 위해 a와 b의 값을 비교해서 양수면 a가 더 크고 음수면 b가 더 크게 된다.
오름차순
arr.sort((a, b) => a - b)
이것은 축약해서 쓴 것이고 풀어서 쓰게 되면
arr.sort(function (a,b)){
return a - b;
}
다음과 같이 된다.
내림차순
만약 오름차순이 아닌 내림차순으로 하고 싶다면 b와 a 자리를 바꿔 주면 된다.
arr.sort(function (a,b)){
return b - a;
}
# 축약
arr.sort((a,b)=>b-a);
'문제 > 백준_자바스크립트' 카테고리의 다른 글
78. 1427(소트인사이드) (0) | 2022.06.14 |
---|---|
77. 2108(통계학) (0) | 2022.06.14 |
75. 2750(수 정렬하기) (0) | 2022.06.12 |
75. 1436(영화감독 숌) (0) | 2022.06.12 |
74. 1018 (체스판 다시 칠하기) (0) | 2022.06.11 |
Comments