题自己找;
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <cmath>
#include <set>
#include <algorithm>
using namespace std;
#define ll long long
#define llu unsigned long long
#define mst(a,b) memset(a,b,sizeof(a))
struct node
{
int id,num;
double so,fa,yi;
}a[10005];
bool cmp(node x,node y)
{
if(x.yi==y.yi)
{
if(x.num==y.num)
return x.id<y.id;
else
return x.num>y.num;
}
return x.yi>y.yi;
}
int main()
{
int n,m;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
// mst(a,0);
a[i].id=i;
scanf("%d",&m);
for(int j=0;j<m;j++)
{
int r,p;
scanf("%d %d",&r,&p);
a[r].so+=p; // i号收到的钱;
a[r].num++;
a[i].fa+=p; // 发出的钱;
}
}
for(int i=1;i<=n;i++)
a[i].yi=a[i].so-a[i].fa;
sort(a+1,a+1+n,cmp);
for(int i=1;i<=n;i++)
printf("%d %.2lf\n",a[i].id,a[i].yi/100.0);
return 0;
}