問題 F: 小白鼠排隊

題目描述

 

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<bits/stdc++.h>
using namespace std;

struct node
{
    int weight;
    string str;

};

bool cmp(struct node a, struct node b)
{
    return a.weight > b.weight;
}

int main()
{
    int n;
    while(cin >> n)
    {
        struct node a[n];
        for(int i=0;i<n;i++)
        {
            cin >> a[i].weight;
            cin >> a[i].str;
        }
        sort(a, a+n, cmp);
        for(int i=0;i<n;i++)
        {
            cout<<a[i].str;
            cout<<endl;
        }
    }
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章