[2007年NOIP普及组] 奖学金
2022/8/13 23:22:48
本文主要是介绍[2007年NOIP普及组] 奖学金,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
[2007年NOIP普及组] 奖学金
思路:定义结构体,用来存每个同学的个人信息。写一个函数使sort降序排列。
分析:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前五名名学生的学号和总分。
代码如下:
#include<iostream>
#include<algorithm>
using namespace std;
struct node{
int c;//语文
int m;//数学
int e;//英语
int x;//编号1--n
};
node s[300];
bool comp(const struct node x,const struct node y)
{ //总分
if(x.c+x.m+x.e>y.c+y.m+y.e)//如果x的总分大于y
return 1;//返回true
if(x.c+x.m+x.e<y.c+y.m+y.e)//如果x的总分小于y
return 0;//返回false
//语文
if(x.c>y.c)
return 1;
if(x.c<y.c)
return 0;
//学号
if(x.x>y.x)
return 0;
if(x.x<y.x)
return 1;
}
int main()
{
int k;
cin>>k;
for(int i=1;i<=k;i++)
{
cin>>s[i].c;
cin>>s[i].m;
cin>>s[i].e;
s[i].x=i;
}
sort(s+1,s+1+k,comp);//降序
for(int i=1;i<=5;i++)//输出前5名
{
cout<<s[i].x<<" ";
cout<<s[i].c+s[i].m+s[i].e<<endl;
}
}
这篇关于[2007年NOIP普及组] 奖学金的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行