計算機考研複試真題 找最小數
阿新 • • 發佈:2018-11-19
題目描述
第一行輸入一個數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; }