수 정렬하기 2
문제
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
5
5
4
3
2
1
1
2
3
4
5
처음엔 정렬 알고리즘을 활용해 오름차순으로 정렬하게끔 코드를 짰으나, 시간초과가 발생해 내장된 함수를 활용해 해결했다.
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
let inputNum = [];
let testNum = 0;
let count = 0;
rl.on('line', function(line) {
if (testNum === 0) {
// 첫 번째 입력값은 테스트 케이스의 개수
testNum = Number(line);
} else {
// 테스트 케이스의 개수만큼 입력을 받고 처리
inputNum.push(Number(line));
count++;
}
if (count === testNum) {
// 모든 입력을 받았으면
const sortedNum =inputNum.sort((a, b) => a - b); // 오름차순 정렬
//Array.sort() 함수를 사용하여 입력받은 숫자들을 오름차순으로 정렬
console.log(sortedNum.join("\n")); // 결과 출력
rl.close();
}
});