Teacher Bo
.
.
因为X,Y都不超过1e5,所以总的曼哈顿距离数量很少,直接n*n搜索,如果有重复直接输出yes就好了
.
.
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
bool flag[200010];
int a[200010][2], n, m;
int main() {
int tt;
scanf("%d", &tt);
while (tt--) {
scanf("%d %d", &n, &m);
for (int i = 1; i <= n; i++) scanf("%d %d", &a[i][0], &a[i][1]);
memset(flag, 0, sizeof(flag));
bool all = false;
for (int i = 1; i <= n; i++) {
for (int j = i+1; j <= n; j++) {
int dist = abs(a[i][0]-a[j][0])+abs(a[i][1]-a[j][1]);
if (!flag[dist]) flag[dist] = true;
else all = true;
if (all) break;
}
if (all) break;
}
if (all) printf("YES\n");
else printf("NO\n");
}
}