#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
struct MJ{
int No;
double Ac;
int Co;
}Mj[10010];
bool cmp(MJ x,MJ y){
if(x.Ac>y.Ac)
return true;
else if(x.Ac==y.Ac){
if(x.Co>y.Co)
return true;
else if(x.Co==y.Co){
if(x.No<y.No)
return true;
else
return false;
}
else
return false;
}
else
return false;
}
int Noi[10010];
int Aci[10010];
int main(){
int n,k;
scanf("%d",&n);
for(int t=1;t<=n;t++)
Mj[t].No=t;
for(int i=1;i<=n;++i){
scanf("%d",&k);
memset(Noi,0,sizeof(int)*k);
memset(Aci,0,sizeof(int)*k);
for(int j=0;j<k;++j){
scanf("%d %d",Noi+j,Aci+j);
}
for(int j=0;j<k;++j){
Mj[i].Ac-=Aci[j];
Mj[Noi[j]].Ac+=Aci[j];
Mj[Noi[j]].Co++;
}
}
sort(Mj+1,Mj+n+1,cmp);
for(int i=1;i<=n;++i){
printf("%d %.2lf",Mj[i].No,Mj[i].Ac/100);
if(i!=n)
printf("\n");
}
}
抢红包_GPLT
最新推荐文章于 2020-01-28 15:13:27 发布