sort에 들어가는 compare 함수에
(a,b) 의
return 값이 1보다 큰 경우 a -> b 순서
return 값이 1보다 작은 경우 b -> a 순서(인덱스를 b를 더 작게 줌)
return 값이 0 인 경우 값이 똑같다
.. 자꾸 까먹는다 ㅠㅠ
// readline 모듈보다는 fs를 이용해 파일 전체를 읽어 들여 처리하기
const fs = require('fs')
const getInput = (filePath) => {
return fs
.readFileSync(filePath)
.toString()
.trim()
.split(/\n/);
}
const input = getInput('/dev/stdin'); // 제출시 여기 '/dev/stdin' 으로 변경
let count = Number(input[0]);
let dataOrg = new Array();
// let dataOrg = input[1].split(' ').map(Number);
for(let i = 1 ; i <= count ; i++)
{
let age = Number(input[i].split(" ")[0]);
let name = input[i].split(" ")[1];
dataOrg.push([age,name]);
}
dataOrg.sort(function(a,b){
if(a[0] != b[0])
{
return a[0] - b[0];
}
else // 나이가 같으면 가입순
{
return 1;
}
});
let ans = "";
for(let p of dataOrg){
ans += p[0] + " " + p[1] + "\n";
}
console.log(ans);'알고리즘 > 백준' 카테고리의 다른 글
| [백준] js 11047 (0) | 2024.02.12 |
|---|---|
| [백준] js 1427 (0) | 2024.02.12 |
| [백준] js 18870 (0) | 2024.02.12 |
| [백준] js 1181 (0) | 2024.02.12 |
| [백준] js 11651 (0) | 2024.02.12 |