[BOJ][C++] 백준 10989번 수 정렬하기 3

Updated:

10989번 수 정렬하기 3

1. 문제 정보

백준 온라인 저지 [10989번 수 정렬하기 3] 문제의 링크입니다.

문제

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

입력

첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.

출력

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

예제 입력1

10
5
2
3
1
4
2
3
5
1
7

예제 출력1

1
1
2
2
3
3
4
5
5
7

시간 / 메모리 제한

3초 / 8MB

2. 생각

  1. 입력 받은 수를 정렬하는 문제입니다. 이 문제는 입력 개수의 범위(1~천만)와 입력된 수의 범위(1~만), 메모리 제한이 힌트였습니다.

  2. 입력의 개수는 최대 천만 개가될 수 있지만 입력된 수는 1부터 10000까지의 수가 입력됩니다. 그 말은 중복된 수가 많을 수 있다는 내용입니다.

  3. 1~10,000까지 저장할 수 있는 배열을 만들고 입력 되는 수가 몇 번 입력되는지 개수를 셉니다.

  4. 입력을 모두 받은 이후 i를 1부터 10,000까지 증가시키며 i를 그 수가 입력된 개수만큼 출력합니다.

3. 소스코드 (C++)


터미널의 입출력 화면 예제1 입력

10989_1

터미널의 입출력 화면 예제1 출력

10989_2 10989_3