专栏文章

题解:P5740 【深基7.例9】最厉害的学生

P5740题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mip05sgi
此快照首次捕获于
2025/12/03 04:00
3 个月前
此快照最后确认于
2025/12/03 04:00
3 个月前
查看原文
本题就是进行排序的一道题目,将每个学生的信息存入结构体,并重载运算符 <,结构体 ab 满足 a<b,当且仅当 a 的三科成绩大于 b 的三科成绩,或 a 的输入顺序在 b 之前。
下面是代码。
C
#include<bits/stdc++.h>
using namespace std;
struct Node{
    string s;
    int a, b, c, id;
    bool operator<(const Node &i) const{
        if (a+b+c==i.a+i.b+i.c) return id < i.id;
        return a+b+c>i.a+i.b+i.c;
    }
} a[1001];
int n;

int main(){
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>a[i].s>>a[i].a>>a[i].b>>a[i].c, a[i].id = i;
    sort(a+1, a+n+1);
    cout << a[1].s << ' ' << a[1].a << ' ' << a[1].b<< ' ' << a[1].c;
}

评论

0 条评论,欢迎与作者交流。

正在加载评论...