백준 알고리즘 문제 풀이 c/c++ -10989-

한창희·2021년 8월 18일
0

백준 알고리즘

목록 보기
10/16

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

  • 메모리 제한이 8MB
  • int형 1개가 4byte 이므로 천만개의 int 원소를 가지는 1차원 배열 생성은 불가!

  • counting sort 수행
  • 입력값 받은 동시에 해당 입력 값 개수를 증가시킨다
  • 카운팅 배열을 선언해야 함

#include <stdio.h>
#include <algorithm>
#include <math.h>
#include <cmath>
#include <string.h>
#include <vector>

using namespace std;

int arr[10010] = {0,};

int main() {

	int n;
	scanf("%d", &n);

	for (int i = 0; i < n; i++) {
		int a;
		scanf("%d", &a);

		arr[a]++;
	}

	for (int i = 1; i < 10010; i++) {
		if (arr[i] > 0) {
			int cnt = arr[i];
			while (cnt >= 1) {
				printf("%d\n", i);
				cnt--;
			}
		}
	}
	

	return 0;
}

profile
매 순간 최선을 다하자

0개의 댓글