알고리즘 문제풀이/백준문제풀이
[백준문제풀이] 2750 수 정렬하기
로디네로
2020. 12. 29. 01:13
반응형
풀이 일시 : 2020-07-30
문제 :
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
입력 :
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
ex)
5
5
2
3
4
1
출력 :
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
ex )
1
2
3
4
5
풀이 :
N을 먼저 입력 받고 N개의 숫자를 입력받아 배열에 입력해준다. 이후 원하는 sort 알고리즘으로 sort 후 출력한다.
시간복잡도 O(N^2)
#include <stdio.h>
#define MAX 1001
int a[MAX];
int main() {
int number, i, j, min, index, temp;
scanf("%d", &number); //N을 입력받는다.
for (i = 0; i < number; i++) { //N번 반복하며 a[]에 수를 입력해준다.
scanf("%d", &a[i]);
}
for (i = 0; i < number; i++) {
min = 1001;
for (j = i; j < number; j++) {
if (min > a[j]) {
min = a[j];
index = j;
}
}
temp = a[i];
a[i] = a[index];
a[index] = temp;
}
for (i = 0; i < number; i++) {
printf("%d\n", a[i]);
}
return 0;
}
반응형