第32823题 程序题
博博的朋友:计算互送礼物的净损益

题目描述

在博博的众多朋友中有一群要互送礼物的人,人数为$P(2\leq P\leq10)$,每个人的名字都不同,这些朋友中每一个人都有可能不会给任何其他人钱。同样的,每个朋友也有可能不会收到来自其他人的钱。你要帮博博确定每个人送出的比收到的多多少。

每个人都会留出一定数量的钱来送礼,并将这笔钱平均分配给他要送礼的人。钱数均为整数。比如在2个朋友分3块钱,那么每个朋友1块钱,剩下1块钱留在送礼者的“账户”中。

博博的这一群朋友,没有人的名字会长于14字符,给出每个人将花在送礼上的钱,和将收到其他人的礼物的人的列表,请确定每个人收到的比送出的钱多的数目。

输入描述

  • 第1行:人数$P$,$2\leq P\leq10$
  • 第2到$P+1$行:这$P$个人的名字,一个名字一行
  • 第$P+2$行到最后:共$P$段内容,每段格式如下:
    • 第一行是将会送出礼物的人的名字
    • 第二行包含两个数字:第一个数$M$是原有的钱的数目($0\leq M\leq2000$),第二个数$N_i$($0\leq N_i\leq P-1$)是将收到这个送礼者礼物的人的个数,如果$N_i$是非零的,在下面$N_i$行列出礼物的接受者的名字,一个名字一行。

输出描述

输出$P$行,每行是一个人的名字,后面是一个空格,后面一个数字是这个人的净损益(最终金额-初始金额)。 对于每一个人的名字的打印顺序应和输入的2到$P+1$行中输入的顺序相同。所有的数字都是整数。 每个人给每个朋友的钱都是相同的整数,而且尽可能多给,不能给出的钱被送礼者自己保留。

输入样例1

5
dave
laura
owen
vick
amr
dave
200 3
laura
owen
vick
owen
500 1
dave
amr
150 2
vick
owen
laura
0 2
amr
vick
vick
0 0

输出样例1

dave 302
laura 66
owen -359
vick 141
amr -150

提示

【数据范围与约定】 对于50%的数据,$2\leq P\leq8$,$0\leq M\leq1000$。 对于100%的数据,$9\leq P\leq10$,$1001\leq M\leq2000$。

编辑模式
程序运行统计
暂无判题统计