社区讨论
0pts求调,样例已过,QWQ
P1051[NOIP 2005 提高组] 谁拿了最多奖学金参与者 5已保存回复 5
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 5 条
- 当前快照
- 1 份
- 快照标识符
- @mm49tj5t
- 此快照首次捕获于
- 2026/02/27 10:26 上周
- 此快照最后确认于
- 2026/02/28 19:00 上周
CPP
#include<bits/stdc++.h>
using namespace std;
struct aac {
int grp,cgr,lw,jxj,js;
string name;
char xu,xb;
} g1[101];
bool cmp(aac a,aac b){
if(a.jxj != b.jxj ) return a.jxj > b.jxj ;
else return a.js < b.js ;
}
int main() {
//freopen("one.in","r",stdin);
//freopen("one.out","w",stdout);
int n,sum=0;
cin>>n;
for(int i=0; i<n; i++) {
cin>>g1[i].name >>g1[i].grp >>g1[i].cgr >>g1[i].xu >>g1[i].xb>>g1[i].lw ;
g1[i].js=i;g1[i].jxj =0;
if(g1[i].grp >=80&&g1[i].lw >=1) g1[i].jxj+=8000;
if(g1[i].grp >=85&&g1[i].cgr >=80) g1[i].jxj+=4000;
if(g1[i].grp >=90) g1[i].jxj+=2000;
if(g1[i].grp >=85&&g1[i].xb =='Y') g1[i].jxj+=1000;
if(g1[i].cgr >=80&&g1[i].xu == 'Y') g1[i].jxj+=850;
sum+=g1[i].jxj ;
}
sort(g1,g1+n,cmp);
cout<<g1[0].name<<'\n'<<g1[0].jxj <<'\n'<<sum;
return 0;
}
回复
共 5 条回复,欢迎继续交流。
正在加载回复...