본문 바로가기

[BOJ] 10989. 수 정렬하기 3 - C++

@Xenawn2025. 7. 26. 06:13
반응형

https://www.acmicpc.net/problem/10989

 

#include <bits/stdc++.h>
using namespace std;

int arr[10001];
int main() {

	int n;
	cin >> n;

	for (int i = 0; i < n; i++) {
		int num;
		cin >> num;
		arr[num]++;
	}

	for (int i = 0; i < 10001; i++) { 

		while (arr[i]--) {
			cout << i << '\n';
		}
	}
}

 

# Tip

이 정렬은 보통 STL sort나 O(N^2) 풀이를 할 때

N의 개수가 10,000,000여서 배열 선언을 하면 메모리가 너무 커서  메모리 초과가 일어난다.

이 수의 최대 자연수는 10000이니 이걸 이용해서 Counting Sort로 정렬을 하면 된다.

반응형

'Algorithm > BOJ [C++]' 카테고리의 다른 글

[BOJ] 15651. N과 M (3) - C++  (0) 2025.08.02
[BOJ] 5648. 역원소 정렬 - C++  (2) 2025.07.27
[BOJ] 1431. 시리얼 번호 - C++  (0) 2025.07.25
[BOJ] 11728. 배열합치기 - C++  (0) 2025.07.15
[BOJ] 1259. 팰린드롬수 - C++  (0) 2025.06.28
Xenawn
@Xenawn :: Xenawn

제넌 게임개발 블로그

공감하셨다면 ❤️ 구독도 환영합니다! 🤗

목차