题解 | #成绩排序#

成绩排序

https://www.nowcoder.com/practice/8e400fd9905747e4acc2aeed7240978b

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

bool cmpAce(pair<string, int> a, pair<string, int> b) {
    return a.second > b.second;
}

bool cmpDec(pair<string, int> a, pair<string, int> b) {
    return a.second < b.second;
}

int main() {
    int n, flag;
    string name;
    int score;
    vector<pair<string, int>> vscore;
    pair<string, int> p;

    cin >> n >> flag;

    while (n-- > 0) {
        cin >> name >> score;
        p.first = name;
        p.second = score;
        vscore.push_back(p);
    }

    if (flag == 0) {
        stable_sort(vscore.begin(), vscore.end(), cmpAce);
    } else if (flag == 1) {
        stable_sort(vscore.begin(), vscore.end(), cmpDec);
    }

    for (auto it : vscore) {
        cout << it.first << " " << it.second << endl;
    }

    return 0;
}

全部评论

相关推荐

炬火初现:为什么会没有面试啊,我有些学长双非cpp都只有小厂实习,最后都还是能面不少的啊,也有进腾讯云智啥的。我个人感觉可能简历太杂了,可以压缩精炼一下。
点赞 评论 收藏
分享
马上要带我人生中的第一个实习生了,想问问大家都喜欢什么的mentor?好让我有个努力的目标
拒绝996的劳伦斯很勇敢:看得见目标且护犊子的 具体就是明确告诉组员要干什么,然后当别的组甩dirty work时能护的组自家新人
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务