代码:
#include <iostream>
#include <math.h>
#define in scanf
#define out printf
using namespace std;
struct node{
int x;
int y;
bool ff;
}a[1005];
int n , k , T , cnt;
double getl(int x1 , int y1 , int x2 , int y2){
return sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2 ));
}
int main(){
in ("%d%d%d" , &n , &k , &T);
for (int i = 1;i <= n;i ++){
in ("%d%d" , &a[i].x , &a[i].y);
}
for (int i = 1;i <= k;i ++){
int x , y;
in ("%d%d" , &x , &y);
for (int j = 1;j <= n;j ++){
if (a[j].x == x && a[j].y == y){
a[j].ff = true;
break;
}
}
}
for (int i = 1;i <= k;i ++){
int x , y;
in ("%d%d" , &x , &y);
double maxl = -1;
int ans = 0;
for (int j = 1;j <= n;j ++){
if (getl(x , y , a[j].x , a[j].y) > maxl){
maxl = getl(x , y , a[j].x , a[j].y);
ans = j;
}
}
if (a[ans].ff) cnt ++;
}
out ("%d" , cnt);
return 0;
}