문제 풀이
x, y 좌표를 구조체를 통해 입력 받고 qsort
를 통해 퀵 정렬한다.
소스코드
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct {
int x;
int y;
} coord;
int compare(const void* a, const void* b)
{
coord A=*(coord*)a;
coord B=*(coord*)b;
if (A.x<B.x)
{
return -1;
}
else if (A.x==B.x)
{
if (A.y<B.y)
{
return -1;
}
else
{
return 1;
}
}
else
{
return 1;
}
return 0;
}
int main(void)
{
int n;
scanf("%d", &n);
coord arr[n];
int i=0;
while (i<n)
{
scanf("%d %d", &arr[i].x, &arr[i].y);
i++;
}
qsort(arr,n,sizeof(coord),compare);
i=0;
while (i<n)
{
printf("%d %d\n", arr[i].x, arr[i].y);
i++;
}
return 0;
}
'C C++ > C C++ 백준' 카테고리의 다른 글
C언어 백준 11814번 나이순 정렬 (0) | 2022.06.26 |
---|---|
C언어 백준 11651번 좌표 정렬하기 2 (0) | 2022.06.26 |
C언어 백준 2751번 수 정렬하기 2 (0) | 2022.06.26 |
C언어 백준 11722번 가장 긴 감소하는 부분 수열 (0) | 2022.06.25 |
C언어 백준 11055번 가장 큰 증가 부분 수열 (0) | 2022.06.25 |
댓글