#include<iostream>
#include<cstdio>
using namespace std;
const int MAXN=20000+5;
struct sky{
int id,y,m,d,quee;
double sc;
}data[MAXN];
int level[MAXN];
int cmp(struct sky *a,struct sky *b)
{
if((*a).sc==0&&(*b).sc==0)return -1;
if((*a).sc<(*b).sc)return 1;
if((*a).sc>(*b).sc)return -1;
if((*a).y>(*b).y)return 1;
if((*a).y<(*b).y)return -1;
if((*a).m>(*b).m)return 1;
if((*a).m<(*b).m)return -1;
if((*a).d>(*b).d)return 1;
if((*a).d<(*b).d)return -1;
if((*a).id>(*b).id)return 1;
if((*a).id<(*b).id)return -1;
}
void sort(int n)
{
int i,j,k;
for(i=1;i<=n-1;i++)
for(j=i+1;j<=n;j++)
if(cmp(data+i,data+j)>0)
{
data[0]=data[i];
data[i]=data[j];
data[j]=data[0];
}
}
int main()
{
int N,n,i,j,w,num,s,l1,l2,l3,l4,l5,l6;
cin>>N;
while(N--)
{
cin>>n;
num=0;
for(i=1;i<=n;i++)
scanf("%d%d/%d/%d%lf",&data[i].id,&data[i].y,&data[i].m,&data[i].d,&data[i].sc);
for(i=1;i<=n;i++)
data[i].quee=i;
sort(n);
for(i=1;i<=n;i++)
if(data[i].sc>0)num++;
l1=n-num;
l6=num*0.03;
l5=(int)(num*0.07);l5+=l6;
l4=(int)(num*0.2);l4+=l5;
l3=(int)(num*0.3);l3+=l4;
l2=num-l3;l2+=l3;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(data[j].quee==i)
{
if(j<=l6)printf("LV6\n");
else if(j<=l5)printf("LV5\n");
else if(j<=l4)printf("LV4\n");
else if(j<=l3)printf("LV3\n");
else if(j<=l2)printf("LV2\n");
else printf("LV1\n");
break;
}
}
return 0;
}
2014 contest 11(0511)水题
最新推荐文章于 2019-06-01 14:03:09 发布