WAAAAA
原题链接https://nuoyanli.com/contest/27/problem/H
本题就是acm比赛的形式的一个计算
n个人,m道题,k次记录
对于k次记录要判断每次记录由谁提交,哪一道题,交了几次,有没有通过,对于没有通过的要记录罚时,再通过之后再加上罚时,不通过则不加。
当没有人答出题时算ckx赢
当两个题量相同时计算罚时,罚时短的获胜
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<iostream>
#include<algorithm>
using namespace std;
struct node
{
long long id;
long long ti;
long long zong;
long long fa[100];
long long pan[100];
}stu[100005];
bool cmp(node x,node y)
{
if(x.ti==y.ti)
{
return x.zong<y.zong;
}
return x.ti>y.ti;
}
int main()
{
long long T;
scanf("%lld",&T);
while(T--)
{
long long n,m,k;
scanf("%lld %lld %lld",&n,&m,&k);
memset(stu,0,sizeof(stu));
for(int i=1;i<=k;i++)
{
long long a,b,c;
char s[100005];
scanf("%lld %lld %lld %s",&a,&b,&c,s);
stu[b].id=b;
if(s[0]=='A'&&stu[b].pan[c]==0)
{
stu[b].ti++;
stu[b].zong+=(stu[b].fa[c]+a);
stu[b].pan[c]=1;
}
else
{
stu[b].fa[c]+=20;
}
}
sort(stu+1,stu+1+n,cmp);
if(stu[1].id==1)
{
printf("WAAAAA\n");
}
else
{
printf("%lld\n",stu[1].id);
}
}
return 0;
}