PAT 1082. 射击比赛 (20)
2024-10-19 03:35:56
本题目给出的射击比赛的规则非常简单,谁打的弹洞距离靶心最近,谁就是冠军;谁差得最远,谁就是菜鸟。本题给出一系列弹洞的平面坐标(x,y),请你编写程序找出冠军和菜鸟。我们假设靶心在原点(0,0)。
输入格式:
输入在第一行中给出一个正整数 N(<= 10 000)。随后 N 行,每行按下列格式给出:
ID x y
其中 ID 是运动员的编号(由4位数字组成);x 和 y 是其打出的弹洞的平面坐标(x,y),均为整数,且 0 <= |x|, |y| <= 100。题目保证每个运动员的编号不重复,且每人只打 1 枪。
输出格式:
输出冠军和菜鸟的编号,中间空 1 格。题目保证他们是唯一的。
输入样例:
3
0001 5 7
1020 -1 3
0233 0 -1
输出样例:
0233 0001 本题比较简单,我们可以把每个与运动员的信息封装在一个结构体中。
然后利用sort函数来对结构体数组进行排序。
#include<bits/stdc++.h>
using namespace std;
struct node{
int id;
int x;
int y;
}s[];
int cmp(struct node a,struct node b)
{
return (a.x*a.x+a.y*a.y)<(b.x*b.x+b.y*b.y);
}
int main()
{
int n;
scanf("%d",&n);
for(int i=;i<n;i++)
{
scanf("%d %d %d",&s[i].id,&s[i].x,&s[i].y);
}
sort(s,s+n,cmp);
printf("%04d %04d",s[].id,s[n-].id);
return ;
}
新人发帖。。。。。。欢迎讨论。。。
最新文章
- js模版引擎handlebars.js实用教程——目录
- DataStructure 排序 源码实现
- (转)UIWebView全部API学习
- iOS - 二维码扫描和应用跳转
- DP入门---Robberies
- python module getopt usage
- Asp.net正则获取html内容
- Eclipse下使用Fat Jar插件对源代码进行打包
- 设计模式(五):PROTOTYPE原型模式 -- 创建型模式
- lambda演算
- Codeforces Round #199 (Div. 2) C. Cupboard and Balloons
- Redis配置信息
- MySQL之字符集
- linux下git服务器安装
- 安装使用hibernate tools
- 【前端开发工具】WijmoJS 2018 v3 正式发布,全面支持Angular7
- 2. instr用法
- x86_64汇编调试程序初步
- 杂谈---这些大忌,你在面试的时候发生过吗?(NO.1)
- java反射基础