题解 | #成绩排序#

成绩排序

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

#include<bits/stdc++.h>
using namespace std;
struct stu{
    string name;
    int score;
    int pos;
};
vector<stu> vec;
bool cmp_0(stu a, stu b)
{
    if(a.score != b.score)
    {
        return a.score > b.score;
    }else{
        return a.pos < b.pos;
    }
}

bool cmp_1(stu a, stu b)
{
    if(a.score != b.score)
    {
        return a.score < b.score;
    }else{
        return a.pos < b.pos;
    }
}
int main()
{
    int n, op;
    scanf("%d%d", &n, &op);
    for(int i = 0; i < n; i++)
    {
        stu a;
        cin >> a.name >> a.score;
        a.pos = i;
        vec.push_back(a);
    }
    if(op == 0){
        sort(vec.begin(), vec.end(), cmp_0);
    }else if(op == 1)
    {
        sort(vec.begin(), vec.end(), cmp_1);
    }
    for(vector<stu>::iterator it = vec.begin(); it != vec.end(); it++)
    {
        cout << it->name << " " << it->score << endl;
    }
    return 0;
}
全部评论

相关推荐

2025-11-13 14:37
门头沟学院 Java
程序员牛肉:是的,我觉得你最先需要的是多接触计算机圈子。我感觉你这个写的太幼稚了,根本没换位思考面试官。 你对实习的描述还是我写了前后端,我写了Restful接口,我用了EChatrs。你这让面试官怎么问你?问你什么是前后端?问你什么是Restful?讲真的兄弟,你这个简历在面试官眼里就是啥也不懂的好学生。所以一定要尽快加入一个圈子跟大家多聊聊,看看正儿八经的简历是怎么写的。 可以看一下我首页的简历怎么写那篇文章来学一下,你这里面的坑点我那篇文章里面都有讲过。
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务