提交0分,但是下的第一个测试点过了,大佬求助
查看原帖
提交0分,但是下的第一个测试点过了,大佬求助
772478
Wisdom_chicken_god楼主2023/1/30 18:41
#include<bits/stdc++.h>
using namespace std;
namespace IO{
	char ibuf[(1<<20)+1],*iS,*iT;
	#if ONLINE_JUDGE
	#define gh() (iS==iT?iT=(iS=ibuf)+fread(ibuf,1,(1<<20)+1,stdin),(iS==iT?EOF:*iS++):*iS++)
 	#else
	#define gh() getchar()
	#endif
	inline long long read(){
		char ch=gh();
		long long x=0;
		bool t=0;
		while(ch<'0'||ch>'9')   t|=ch=='-',ch=gh();
		while(ch>='0'&&ch<='9') x=x*10+(ch^48),ch=gh();
		return t?-x:x;
	}
}
using IO::read;
struct money{
	string num;
	int qi,ba,lun;
	char ga,xi;
	int sum;
}a[200];
int n,cnt;
bool cmp(money x,money y){
	return x.sum>y.sum;
}
int main(){
    n=read();
    for(int i=1;i<=n;i++){
		cin>>a[i].num>>a[i].qi>>a[i].ba>>a[i].ga>>a[i].xi>>a[i].lun;
		if(a[i].qi>80&&a[i].lun>=1)
			a[i].sum+=8000,cnt+=8000;
		if(a[i].qi>85&&a[i].ba>80)
			a[i].sum+=4000,cnt+=4000;
		if(a[i].qi>90)
			a[i].sum+=2000,cnt+=2000;
		if(a[i].qi>85&&a[i].xi=='Y')
			a[i].sum+=1000,cnt+=1000;
		if(a[i].ba>80&&a[i].ga=='Y')
			a[i].sum+=850,cnt+=850;
    }
    sort(a+1,a+1+n,cmp);
    for(int i=0;i<a[1].num.length();i++)
    cout<<a[1].num[i];
    printf("\n%d\n%d",a[1].sum,cnt);
	return 0;
}
2023/1/30 18:41
加载中...