题目描述
第一行输入一个数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
输出
2 1
//计算机考研复试真题 找最小数 /* 程序设计思想:首先建立一个含两个成员的结构体Num,然后建立一个Num类型的向量。然后输入数据后,对向量中元素进行排序。 利用头文件中的algorithm的sort函数,重定义comp函数,然后输出即可。 */ //程序实现: #include<iostream> #include<vector> #include<algorithm> using namespace std; struct Num{ int x; int y; }; bool comp(Num n1,Num n2){ //自定义函数,注意排法 if(n1.x==n2.x) return n1.y<n2.y; else return n1.x<n2.x; } int main(){ int n; while(cin>>n){ vector<Num>v(n); for(int i=0;i<n;++i){ //读入信息 cin>>v[i].x>>v[i].y; } sort(v.begin(),v.end(),comp); //按要求排序 cout<<v[0].x<<" "<<v[0].y<<endl; } return 0; }