qq_45656734
纤手破新橙123
采纳率100%
2020-12-03 14:37 阅读 2

大佬们!!这个代码为什么提交只有60分!!!

 

#include<bits/stdc++.h>
using namespace std;
int len(int X,int Y,int x,int y){
	return (X-x)*(X-x)+(Y-y)*(Y-y);
}
struct v{
	int num;
	int len;
};
bool comp(v &a,v &b){
	return a.len<b.len;
}
int main(){
	vector<v> a;
	v vt;
	int n,X,Y,x,y;
	cin>>n>>X>>Y;
	for(int i=0;i<n;i++){
		cin>>x>>y;
		vt.num=i+1;
		vt.len=len(X,Y,x,y);
		a.push_back(vt);
	}
	sort(a.begin(),a.end(),comp);
	for(int i=0;i<3;i++)
		cout<<a[i].num<<endl;
	return 0;
}
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    Rorschach321 RRRR君 2020-12-03 15:26

    下次发问题怎么也得发个题目是啥吧...

    点赞 评论 复制链接分享
  • qq_45656734 纤手破新橙123 2020-12-03 15:04

    是我傻了,序号最小排序还没实现

    点赞 评论 复制链接分享
  • qq_45656734 纤手破新橙123 2020-12-03 16:13

    我忘了!抱歉

    点赞 评论 复制链接分享

相关推荐