📄 2035.cpp
字号:
/* This Code is Submitted by wywcgs for Problem 2035 on 2005-09-30 at 12:34:47 */
#include <stdio.h>
#include <stdlib.h>
#define MAX 10000
typedef struct {
long x;
long y;
} Point;
int cmp(const void*, const void*);
int main()
{
int c, n, i, j, m, haveCenter;
Point p[MAX];
long xm, ym;
scanf("%d", &c);
for(i = 0; i < c; i++) {
scanf("%d", &n);
for(j = 0; j < n; j++) {
scanf("%ld %ld", &p[j].x, &p[j].y);
}
qsort(p, n, sizeof(Point), cmp);
xm = p[n-1].x + p[0].x;
ym = p[n-1].y + p[0].y;
m = (n + 1) / 2;
haveCenter = 1;
for(j = 1; j < m; j++) {
if(p[n-1-j].x + p[j].x != xm) {
haveCenter = 0;
break;
} else if(p[n-1-j].y + p[j].y != ym) {
haveCenter = 0;
break;
}
}
if(haveCenter) {
printf("yes\n");
} else {
printf("no\n");
}
}
return 0;
}
int cmp(const void *a, const void *b)
{
Point *p = (Point*)a, *q = (Point*)b;
if(p->x < q->x) {
return -1;
} else if(p->x > q->x) {
return 1;
} else {
if(p->y < q->y) {
return -1;
} else {
return 1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -