社区讨论

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 条回复,欢迎继续交流。

正在加载回复...