티스토리 뷰
문제
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
입력
첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.
출력
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
#include <stdio.h>
int arr[10001];
int main() {
int n = 0;
int num = 0;
scanf("%d",&n);
for(int i = 0; i < n ; i++){
scanf("%d",&num);
arr[num]++;
}
for(int i = 1; i < 10001; i++){
for(int j = 0; j < arr[i]; j++){
printf("%d\n", i);
}
}
}
그냥 메모리도 넉넉하겠다 처음보자마자 떠오르는게 counting sort라 counting sort로 풀었다.
다른 것들로하면 시간제한 걸리는진 모르겠다.
edge case 땜에 한 3번 더 틀린듯 ㅎㅎ..
'공부한거 > PS' 카테고리의 다른 글
백준 28702번 - FizzBuzz (C언어) (0) | 2024.06.29 |
---|---|
백준 2775번 - 부녀회장이 될테야 (C언어) (0) | 2024.06.28 |
백준 1259번 - 팰린드롬수 (C언어) (0) | 2024.06.28 |
백준 2789번 - 블랙잭 (C언어) (0) | 2024.06.28 |