작은 수 4개 찾기(정렬)

exsoul·2022년 6월 15일
0

문제 설명


N개의 정수가 주어질 때 가장 작은 수 4개를 출력하는 프로그램을 작성하시오.

입력 설명


첫 줄에 정수의 개수 N(4≤N≤30,000)이 주어진다.
둘째 줄에는 N개의 정수가 공백으로 구분되어 주어진다. (각 정수는 0 이상 10억 이하)

출력 설명


값이 작은 정수부터 4개를 출력한다.

입력 예시


8
2 4 7 8 8 9 4 3

출력 예시


2 3 4 4

#include <stdio.h>
#include <stdlib.h>
#define MAXN ((int)3e4)
int N;
int A[MAXN + 10];
 
void simplesort(int s, int e){
    for (int i=s; i<s+4; i++){
        for (int j=i+1; j<=e; j++){
            if (A[i] > A[j]){
                int tmp = A[i];
                A[i] = A[j];
                A[j] = tmp;
            }
        }
    }
}
 
int comp(const void *a, const void *b){
    return *(int*)a - *(int*)b;
}
 
void InputData(void){
    scanf("%d", &N);
    for (int i=0; i<N; i++){
        scanf("%d", &A[i]);
    }
}
 
void OutputData(void){
    for (int i=0; i<4; i++){
        printf("%d ", A[i]);
    }
    printf("\n");
}
 
int main(void){
    InputData();//입력 받는 부분
 
    simplesort(0, N-1);//여기서부터 작성
    //qsort(A, N, sizeof(A[0]), comp);
 
    OutputData();//출력 하는 부분
    return 0;
} 
profile
ocho

0개의 댓글