演算法筆記 — 小白鼠排隊
阿新 • • 發佈:2018-11-25
題目連結:http://www.codeup.cn/problem.php?cid=100000581&pid=5
題目描述
N只小白鼠(1 <= N <= 100),每隻鼠頭上戴著一頂有顏色的帽子。現在稱出每隻白鼠的重量,要求按照白鼠重量從大到小的順序輸出它們頭上帽子的顏色。帽子的顏色用“red”,“blue”等字串來表示。不同的小白鼠可以戴相同顏色的帽子。白鼠的重量用整數表示。
輸入
多案例輸入,每個案例的輸入第一行為一個整數N,表示小白鼠的數目。
下面有N行,每行是一隻白鼠的資訊。第一個為不大於100的正整數,表示白鼠的重量,;第二個為字串,表示白鼠的帽子顏色,字串長度不超過10個字元。
注意:白鼠的重量各不相同。
輸出
每個案例按照白鼠的重量從大到小的順序輸出白鼠的帽子顏色。
樣例輸入
1 79 omi 9 46 lcg 92 cru 37 ceq 54 vhr 17 wus 27 tnv 13 kyr 95 wld 34 qox
樣例輸出
omi wld cru vhr lcg ceq qox tnv wus kyr
#include<iostream> #include<algorithm> using namespace std; struct Mou{ int weig; string color; }mou[111]; bool cmp(Mou x,Mou y){ return x.weig>y.weig; } int main(){ int n; while(cin>>n){ for(int i=0;i<n;i++){ cin>>mou[i].weig>>mou[i].color; } sort(mou,mou+n,cmp); for(int i=0;i<n;i++){ cout<<mou[i].color<<endl; } } return 0; }