잡동사니/[2022] 회로이론
[백준/C] 2751번 수 정렬하기 2
heylo
2022. 12. 11. 02:08
https://www.acmicpc.net/problem/2751
2751번: 수 정렬하기 2
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
www.acmicpc.net
C언어 내장함수 qsort() 퀵 소트 함수를 이용하였다.
퀵소트 구현 아직 못한당. 함수 이용하면 편하다
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#define MAX 1000001
int compare(const void *a, const void *b) // 비교함수: 뒷 수가 크면 -1, 같으면 0, 앞의 수가 크면 1
{
int num1 = *(int *)a;
int num2 = *(int *)b;
if (num1 < num2)
return -1;
if (num1 > num2)
return 1;
return 0;
}
int main()
{
int n; // 정수의 개수
int num[MAX]; // 입력할 정수
int i, k; // 반복
scanf("%d", &n);
for(i=0; i<n; i++){
scanf("%d", &num[i]);
}
qsort(num, n, sizeof(int), compare); // (정렬할 배열, 요소개수, 요소크기, 비교함수)
for(i=0;i<n; i++){
printf("%d\n", num[i]);
}
return 0;
}