题解 | #找最小数# 王道机试指南 查找
找最小数
https://www.nowcoder.com/practice/ba91786c4759403992896d859e87a6cd
查找最小值,可以先将 x y 按照升序排序 最后直接输出data[0].x data[0].y
利用C++库中的sort函数
自定义comp参数 ,使得排序满足题意
//2023-4-16 //王道机试指南 查找 https://www.nowcoder.com/practice/ba91786c4759403992896d859e87a6cd?tpId=40&tqId=21530&tPage=1&rp=1&ru=/ta/kaoyan&qru=/ta/kaoyan/question-ranking //关于一组数据 就要用结构体定义 #include<iostream> #include<algorithm>//sort所在头文件 using namespace std; struct Data { int x; int y; } ; bool comp(Data m, Data n) { if (m.x == n.x) return m.y < n.y; else return m.x < n.x; } int main() { int n; Data data[1001]; while (cin >> n) { for (int i = 0; i < n; i++) cin >> data[i].x >> data[i].y; //查找最小值,可以先将 x y 按照升序排序 最后直接输出data[0].x data[0].y //输出一组x y,该组数据是所有数据中x最小,且在x相等的情况下y最小的 sort(data, data + n, comp); //comp自定义,以满足要求 //输出 cout << data[0].x << ' ' << data[0].y; } return 0; }