社区讨论
为啥我本地测试测试点9的没问题
P1051[NOIP 2005 提高组] 谁拿了最多奖学金参与者 5已保存回复 5
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 5 条
- 当前快照
- 1 份
- 快照标识符
- @mlpzsxdb
- 此快照首次捕获于
- 2026/02/17 10:37 前天
- 此快照最后确认于
- 2026/02/17 22:16 前天
CPP
#include<bits/stdc++.h>
using namespace std;
const int MAXN=105;
int n;
int sum;
struct stu {
string name;
int sum,index;
} stus[MAXN];
int main() {
cin>>n;
for(int i=1; i<=n; i++) {
cin>>stus[i].name;
int a,b,c,d,e;
char cd,cc;
cin>>a>>b>>cc>>cd>>e;
d=(cd=='Y'?1:0);
c=(cc=='Y'?1:0);
if(a>80&&e>=1)stus[i].sum+=8000;
if(a>85&&b>80)stus[i].sum+=4000;
if(a>90)stus[i].sum+=2000;
if(a>85&&d)stus[i].sum+=1000;
if(b>80&&c)stus[i].sum+=850;
sum+=stus[i].sum;
}
sort(stus+1,stus+n+1,[](stu a,stu b) {
return a.sum>b.sum;
});
cout<<stus[1].name<<endl<<stus[1].sum<<endl<<sum;
return 0;
}
回复
共 5 条回复,欢迎继续交流。
正在加载回复...