문제

N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.

입력

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

출력

첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.

해결과정

  1. 2750번과 같은 문제, 숫자 범위만 달라져서 당황
  2. 같은 코드를 제출했는데 메모리 초과, 시간 초과
  3. console.log 문제인 것을 확인하고 최대한 줄임
  4. 통과는 했지만 여전히 채점이 오래걸린다...
  5. 병합정렬이라는 것이 있으니 공부하자
let input = require('fs').readFileSync('/dev/stdin', 'utf8').toString().trim().split('\n');

input.shift();

let answer = input.sort((a, b) => a - b);

// 메모리 초과, 시간 초과를 위해 최대한 console.log를 줄였지만
// 이것도 시간이 엄청 오래 걸림...
console.log(answer.join('\n'));
profile
코더가 말고 개발자가 되고싶은...

0개의 댓글