1. 程式人生 > >演算法筆記 — 小白鼠排隊

演算法筆記 — 小白鼠排隊

 

題目連結: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;
}