1 条题解

  • 1
    @ 2026-4-1 20:35:20
    #include<bits/stdc++.h>
    using namespace std;
    struct ikun{
    	int x,y;	
    	int sum,id;
    }a[10005];
    bool cmp(ikun a,ikun b){
    	if(a.sum==b.sum){
    		return a.id<b.id;
    	}
    	return a.sum<b.sum;       
    }
    int main(){
    	int t,x,y;
    	cin>>t>>x>>y;
    	for(int i=1;i<=t;i++){
    		cin>>a[i].x>>a[i].y;
    		a[i].id=i; 
    	}
    	for(int i=1;i<=t;i++){
    		a[i].sum=(x-a[i].x)*(x-a[i].x)+(y-a[i].y)*(y-a[i].y); 
    	}	
    	sort(a+1,a+t+1,cmp);
    	for(int i=1;i<=3;i++){
    		cout<<a[i].id<<"\n";
    	}
    	return 0;
    }

    信息

    ID
    593
    时间
    1000ms
    内存
    256MiB
    难度
    2
    标签
    递交数
    425
    已通过
    176
    上传者