当前位置: 代码迷 >> 综合 >> 1082 射击比赛 (20分) C/C++版15行代码 通过所有测试点
  详细解决方案

1082 射击比赛 (20分) C/C++版15行代码 通过所有测试点

热度:18   发布时间:2024-01-29 17:17:24.0

喜欢我的文章,记得点赞+收藏+关注の,你的反馈就是我不断更新的动力!QQ/Wechat:235 40008

原题目链接:1082 射击比赛 (20分)

解题思路:
1.采用C++中STL之映射map [键,值]
2.map会自动按键从小到大排序。
3.输出map的首个元素的值最后一个元素的值即可。

代码如下:

#include<bits/stdc++.h>
using namespace std;
int main(int argc, char** argv)
{int n, num, x, y , gap;scanf("%d", &n);map<int,int> m;for(int i = 0; i < n; i++){cin >> num >> x >> y;gap = x * x + y * y;m[gap] = num; }printf("%04d %04d", m.begin()->second, m.rbegin()->second);return 0;
}

喜欢我的文章,记得点赞+收藏+关注の,你的反馈就是我不断更新的动力!QQ/Wechat:235 40008