3 条题解

  • 0
    @ 2024-7-6 21:47:44
    #include<bits/stdc++.h> using namespace std;
    
    struct node{ int x,y; bool flag; }a[1005];
    
    double f(int x,int y,int z,int w){ return sqrt(((x-z)​*(x-z)+(y-w)*​(y-w))\*1.0); } int n,k,t,res; int main(){ cin>>n>>k>>t; for(int i=1;i<=n;i++) cin>>a[i].x>>a[i].y; for(int i=1;i<=k;i++) { int x,y; cin>>x>>y; for(int j=1;j<=n;j++) if(a[j].x==x && a[j].y==y) { a[j].flag=true; break; } } for(int i=1;i<=t;i++) { int x,y,ans; double maxl=-1; cin>>x>>y; for(int j=1;j<=n;j++) if(f(x,y,a[j].x,a[j].y)>maxl) ans=j,maxl=f(x,y,a[j].x,a[j].y); if(a[ans].flag) res++; } cout<<res; return 0; }
    

    信息

    ID
    191
    时间
    1000ms
    内存
    256MiB
    难度
    7
    标签
    递交数
    51
    已通过
    13
    上传者