코딩테스트 대비/백준 알고리즘

BOJ - 10814 나이순 정렬

JellyApple 2024. 5. 25. 18:15

문제 : https://www.acmicpc.net/problem/10814

문제 등급: 실버5

문제 유형: 정렬

문제 풀이: 좌표 정렬과 비슷하게 나이로 먼저 정렬하고 나이가 같을 때 먼저 가입한 순으로 정렬하는 문제다. 

JS 정렬에서는 그대로 위치가 들어온대로 유지되는 stable sort을 제공하기 때문에 나이를 기준으로 정렬하면 된다.

1) N 입력 받음

const fs = require("fs");
let input = fs.readFileSync("/dev/stdin").toString().split("\n");
let N = Number(input[0]);
let arr =[];
for(let i=i;i<=N;i++){
   let age = Number(input[i].split(" ")[0]);
   let name = input[i].split(" ")[1];
   arr.push([age,name]);
 }

2) 정렬 

arr.sort((a,b)=>a[0]-b[0]);

3) 값 출력

let answer = "";
for(let x of arr){
    answer += x[0] + " " + x[1] + "\n";
}
console.log(answer);