https://www.nowcoder.com/practice/ba91786c4759403992896d859e87a6cd?tpId=67&tqId=29645&rp=0&ru=/kaoyan/retest/1005&qru=/ta/bupt-kaoyan/question-ranking
题目描述
第一行输入一个数n,1 <= n <= 1000,下面输入n行数据,每一行有两个数,分别是x y。输出一组x y,该组数据是所有数据中x最小,且在x相等的情况下y最小的。
输入描述:
输入有多组数据。
每组输入n,然后输入n个整数对。
输出描述:
输出最小的整数对。
示例1
输入
5
3 3
2 2
5 5
2 1
3 6
找最小数,两层判断
#include<iostream> #include<cstdio> #include<cmath> #include<algorithm> #include<string.h> using namespace std; struct Donser { int x; int y; }; int main() { int num; while(scanf("%d",&num)!=EOF) { int i=0,minx=10000,miny=10000; Donser donser[1001]; while(i++<num) { scanf("%d %d",&donser[i].x,&donser[i].y); } for(int j=1;j<=num;j++) { if(donser[j].x<minx) { minx=donser[j].x; miny=donser[j].y; } else if(donser[j].x==minx) { if(donser[j].y<miny) { minx=donser[j].x; miny=donser[j].y; } } } cout<<minx<<" "<<miny<<endl; } return 0; }
输出
2 1