为何不过!!!!!!
原题链接:23.[NOIP2005 提高组] 谁拿了最多奖学金2025-10-11 21:41:35
发布于:广东
题目给的样例可以过,但测试样例不过!!!!!!!!!!!!!!!!!!!啊啊啊啊啊啊啊啊啊啊啊
#include<bits/stdc++.h>
using namespace std;
int n;
struct node{
string s;
long long q,p,sum;
bool g,x,l;
}a[110];
bool cmp(node x,node y){
return x.sum>y.sum;
}
int main(){
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i].s>>a[i].q>>a[i].p;
char ff;
cin>>ff;
if(ff=='Y'){
a[i].g=1;
}
cin>>ff;
if(ff=='Y'){
a[i].x=1;
}
cin>>ff;
if(ff-'0'>=1){
a[i].l=1;
}
}
for(int i=0;i<n;i++){
if(a[i].q>80&&a[i].l){
a[i].sum+=8000;
}
if(a[i].q>85&&a[i].p>80){
a[i].sum+=4000;
}
if(a[i].q>90){
a[i].sum+=2000;
}
if(a[i].q>85&&a[i].x){
a[i].sum+=1000;
}
if(a[i].q>80&&a[i].g){
a[i].sum+=850;
}
}
sort(a,a+n,cmp);
cout<<a[0].s<<endl<<a[0].sum<<endl;
long long lll=0;
for(int i=0;i<n;i++){
lll+=a[i].sum;
}
cout<<lll;
return 0;
}
这里空空如也
有帮助,赞一个