PS/Baekjoon Online Judge

[백준 2751] 수 정렬하기 2 [C]

kimyoungrok 2021. 7. 15. 20:57

백준 - 2751


풀이

시간 제한이 2초라, 공간효율보다는 시간효율을 중시해 코드를 작성했다.


소스코드

#include <stdio.h>
#include <stdlib.h>
int num[1000001];
int compare(const void *a, const void *b){
    int n1 = *(int *)a, n2 = *(int *)b;
    if (n1 < n2)
        return -1;
    else if (n1 > n2)
        return 1;
    return 0;
}
int main(){
    int N;
    scanf("%d", &N);
    for (int i = 0; i < N; i++)
        scanf("%d", &num[i]);
    qsort(num, N, sizeof(int), compare);
    for (int i = 0; i < N; i++)
        printf("%d\n", num[i]);
}

출처

 

2751번: 수 정렬하기 2

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

www.acmicpc.net