Little Jay

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

알고리즘/BOJ

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

Jay, Lee 2021. 3. 26. 17:18

일반적으로 벡터나 배열에 숫자를 저장하게 된다면

문제의 조건에서 주어진 메모리값을 초과한다.

그래서 숫자를 받고, 그 값을 카운트해서 그 값을 출력해주면 됨.

 

입력될 수 있는 수가 10,000,000개라서 이걸 배열이나 벡터에 저장해버리면

당연히 메모리에러가 발생한다.

 

#include <iostream>
using namespace std;

int main() {

	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	int n;
	cin >> n;

	int arr[10001]{ 0, };

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

	for (int i = 0; i <= 10000; i++) {
		for (int k = 0; k < arr[i]; k++) {
			cout << i << "\n";
		}
	}


	return 0;
}

'알고리즘 > BOJ' 카테고리의 다른 글

[C++] 백준 11651번 좌표 정렬하기2  (0) 2021.04.02
[C++] 백준 10866번 덱  (0) 2021.03.29
[C++] 백준 10845번 큐  (0) 2021.03.26
[C++] 백준 2775번 부녀회장이 될테야  (0) 2021.03.26
[C++] 백준 4153번 직각삼각형  (0) 2021.03.26
Comments