#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
using namespace std;
struct mouse{
    int weight;
    string color;
};
bool compare(mouse m1,mouse m2){
    return m1.weight>m2.weight;
}
int main(){
    int n;
    while(cin>>n) {
        vector<mouse> vec(n);
        for (int i = 0; i < n; i++) {
            cin >>vec[i].weight>>vec[i].color;
        }
        sort(vec.begin(),vec.end(),compare);
        for(auto x:vec){
            cout<<x.color<<endl;
        }
    }
    return 0;
}
用sort函数直接解决



京公网安备 11010502036488号