神犇们救救蒟蒻,本地没问题,但是一直A不了
查看原帖
神犇们救救蒟蒻,本地没问题,但是一直A不了
364319
DIgnited楼主2020/10/2 18:05

数据是对的

//P1051
#include<bits/stdc++.h>
#define sc scanf
#define pr printf
using namespace std;
struct student
{
	char name[21],b,w;
	int mark,cmark,lw,money,scan;
}a[101];
int sum,n;
bool cmp(student x,student y);
int main()
{
	sc("%d",&n);
	for(int i=1;i<=n;i++)
	{
		sc("%s%d%d%s%s%d",a[i].name,&a[i].mark,&a[i].cmark,&a[i].b,&a[i].w,&a[i].lw);
		a[i].scan=i;
        if(a[i].mark>80 && a[i].lw>=1)
            a[i].money+=8000;
        if(a[i].mark>85 && a[i].cmark>80)
            a[i].money+=4000;
        if(a[i].mark>90) 
            a[i].money+=2000;
        if(a[i].mark>85 && a[i].w=='Y')
            a[i].money+=1000;
        if(a[i].mark>80 && a[i].b=='Y')
            a[i].money+=850;
        sum+=a[i].money;
	}
	sort(a+1,a+n+1,cmp);
	pr("%s\n%d\n%d",a[1].name,a[1].money,sum);
	return 0;
}
bool cmp(student x,student y)
{
	if(x.money==y.money)
		return x.scan<y.scan;
	return x.money>y.money;
}

测评记录

2020/10/2 18:05
加载中...