티스토리 뷰
728x90
https://www.acmicpc.net/problem/10989
- 해설 :
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
- 풀이 :
sort를 사용하기 싫어서 조금 비효율적이지만 새로운 방법을 사용해보았다. 배열을 max range만큼 늘리고 N개의 수에 대해 flag로 표시해준다. (1로 표시해주었다.) 배열의 마지막 인덱스부터 거꾸로 탐색하며 1인 경우에 출력해주었다.
- 소스코드 :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#include <iostream>
using namespace std;
int main(void) {
int n;
cin >> n;
int ary[10001] = { 0, };
for (int i = 1; i < n+1; i++){
int temp;
scanf("%d", &temp);
ary[temp] += 1;
}
for (int i = 1; i < 10001;i++) {
while (ary[i]>0) {
printf("%d \n", i);
ary[i] -= 1;
}
}
}
|
cs |
320x100
'Algorithm > Sorting' 카테고리의 다른 글
(Python) - BOJ(11651번) : 좌표 정렬하기 2 (0) | 2022.02.07 |
---|---|
(Python) - BOJ(11650번) : 좌표 정렬하기 (0) | 2022.02.07 |
(Python) - BOJ(10814번) : 나이순 정렬 (0) | 2022.02.04 |
(Python) - BOJ(2751번) : 수 정렬하기 2 (0) | 2022.02.01 |
(Python) - BOJ(1181번) : 단어 정렬 (0) | 2022.01.26 |
댓글
© 2022 WonSeok, All rights reserved