1385 - Recuperação de Relatório

  • ID: 1385
  • IdBecrowd: 1385
  • Tags: geometria, strings
  • Nível: 8
  • Tempo Limite: 1 segundos
  • Memória: 200 MB
  • Categoria: Strings
  • Autor: Rodrigo Cardoso, Brasil.

Descrição

No final da semana, John pediu para Maria enviar-lhe um relatório urgente de vendas. Maria estava com pressa, porque estava saindo para suas férias. Ela, então, copiou e colou a folha de vendas em um e-mail, enviou para John e saiu. Ela não queria ser incomodada com questões de trabalho, de modo que ela saiu sem dizer a ninguém onde ela estaria. Ela anunciou simplesmente que não estaria disponível para as próximas duas semanas, desligou o celular e saiu.

Quando João recebeu a mensagem, ele percebeu que o relatório não tinha nenhum espaço! Ele sabia que o relatório deveria ter uma linha de cabeçalho com códigos de produtos da forma P1, P2,. . ., PN e a palavra “Totals” (Totais) no final. Então haveria várias linhas de relatórios de vendas de produtos para os diferentes vendedores de escritório de Maria. Cada vendedor foi identificado com um nome composto por uma palavra (apenas caracteres alfabéticos). A linha correspondente a um vendedor deve começar com o seu nome, seguido do número de produtos vendidos, de acordo com as colunas do relatório. A última linha do relatório deve começar com as duas letras TP seguidos pelos totais de cada coluna no relatório (é claro, o nome de nenhum vendedor começa com as letras TP). John sabia que não havia números negativos no relatório, uma quantidade de zero foi avaliado como um único 0, e não há zeros à esquerda ao relatar uma quantidade positiva.

Neste ponto, John decidiu reconstruir o relatório de Maria. Ele sabia que não poderia ser mais de um resultado possível, mas queria fazê-lo de qualquer maneira com a primeira solução consistente que ele poderia encontrar (talvez ele pudesse corrigir os erros quando Maria voltasse).

Você poderia ajudar John com a recuperação de relatório de vendas de Maria?

Entrada

A entrada consiste em vários casos de teste. A primeira linha de entrada contém um número inteiro C especificando o número de casos de teste. A primeira linha de um relatório é uma linha de cabeçalho, contendo o código dos produtos P 1, P 2. . . PN e a palavra Totais, como descrito acima. A numeração dos produtos nesta linha de cabeçalho é consecutiva, de 1 a N , com 1 ≤ N ≤ 5. Depois, há um número de linhas, cada uma representando uma linha do relatório, como descrito acima. A última linha do relatório inicia com as letras TP e têm o formato descrito acima. Considere que cada vendedor tenha vendido menos de 1000 unidades de cada produto. Há não mais de 4 vendedores em cada caso de teste. Cada nome de vendedor não poderá exceder 10 caracteres (apenas letras maiúsculas e minúsculas).

Saída

Para cada caso de teste da entrada seu programa deve produzir um possível relatório de Maria. Cada linha da resposta deve ser alinhado à esquerda, com seus itens separados por um único espaço, e sem espaços a mais no final.

Exemplos

Exemplo de Entrada

2

                                P1P2P3Totals

                                Amanda121100131

                                Charles5141772

                                Monique14121238

                                TP1862629241

                                P1P2Totals

                                Ingrid9519851936

                                Candid49212504

                                Peter10313

                                Camila000

                                TP145310002453

Exemplo de Saída

P1 P2 P3 Totals

                                Amanda 121 10 0 131

                                Charles 51 4 17 72

                                Monique 14 12 12 38

                                TP 186 26 29 241

                                P1 P2 Totals

                                Ingrid 951 985 1936

                                Candid 492 12 504

                                Peter 10 3 13

                                Camila 0 0 0

                                TP 1453 1000 2453
Back to top