408794: GYM103324 B Festival de Presentes
Description
Aproximando-se do ano novo, uns grupos de amigos resolvem fazer o tradicional festival de presentes. Considerando um grupo de amigos que vão dar presentes entre si, queremos determinar quanto cada amigo ganhou (ou perdeu) considerando o valor que ele deu de presente pra seus amigos (dividindo igualmente) e o quanto ele recebeu de seus amigos. Porém, nesses grupos de amigos, algumas pessoas vão ter mais conhecidos que outras. Dado um grupo de amigos, o dinheiro que cada pessoa do grupo vai usar pra presentear e dividir igualmente entre os amigos que ela escolheu presentear, crie o programa que responde quanto cada pessoa do grupo ganhou (ou perdeu).
Este problema envolve determinar, para um grupo de amigos que se dão presentes, quanto cada pessoa dá a mais do que recebe (e vice-versa para aqueles que vêem dar presentes com cinismo). Neste problema, cada pessoa reserva algum dinheiro para dar presentes e divide esse dinheiro igualmente entre todos aqueles a quem são dados presentes. No entanto, em qualquer grupo de amigos, algumas pessoas dão mais do que outras (ou pelo menos podem ter mais conhecidos) e algumas pessoas têm mais dinheiro do que outras. Dado um grupo de amigos, o dinheiro que cada pessoa do grupo gasta em presentes e uma (sub) lista de amigos a quem cada pessoa dá presentes; você deve escrever um programa que determina quanto mais (ou menos) cada pessoa no grupo dá do que recebe.
InputA primeira linha de entrada será a quantidade de grupos a serem examinados. Logo, teremos uma sequência de grupos de amigos do festival de presentes. Cada grupo consiste de várias linhas:
- Uma linha contendo o número de pessoas no grupo;
- Uma nova linha com a lista dos nomes de cada pessoa do grupo;
- Uma nova linha para cada pessoa no grupo consistindo de: nome da pessoa, a quantidade de dinheiro que essa pessoa usará pra presentear, o número de pessoas a quem os presentes são dados e os nomes das pessoas do grupo a quem os presentes são dados.
Para cada grupo do festival de presentes, imprima, para cada pessoa do grupo, o nome da pessoa seguido pelo ganho (ou perda) recebido (ou gasto) por ela. Cada linha de pessoa deve ser impressa na mesma ordem em que aparecem pela primeira vez na entrada.
A saída de cada grupo deve ser separada de outros grupos por uma linha em branco. Todos os presentes são inteiros. Então, cada pessoa pegará o valor que ela reservou para os presentes e dividirá igualmente entre as pessoas destinadas, dando o máximo possível que não passe do valor definido. Qualquer dinheiro que sobre nessa divisão será mantido e irá fazer parte do "valor líquido" final impresso na saída dessa pessoa.
ExampleInput2 5 andre clara gabriel vitoria matheus andre 200 3 clara gabriel vitoria gabriel 500 1 andre matheus 150 2 vitoria gabriel clara 0 2 matheus vitoria vitoria 0 0 3 liz joao andre liz 30 1 joao joao 55 2 liz andre andre 0 2 joao lizOutput
andre 302 clara 66 gabriel -359 vitoria 141 matheus -150 liz -3 joao -24 andre 27