Na loja do Senhor Moeda, não se aceitam notas para pagar as compras realizadas pelos clientes, nem se dá troco em notas. Tudo é realizado com as moedas de 2 e 1 euros e as moedas de 50, 20, 10, 5, 2 e 1 cêntimos. Na loja existe um stock ilimitado de moedas e, já agora, de artigos para venda.
De forma a manter os clientes satisfeitos, sempre que o Sr. Moeda dá troco, dá o menor número possível de moedas.
Escreva um programa que, dado o valor da compra e as moedas que o cliente entregou para pagar a compra, indica as moedas dadas no troco, caso seja possível realizar a compra (ou seja, quando o valor entregue pelo cliente é superior ou igual ao valor da compra). No caso contrário, a compra não se pode concretizar e as moedas entregues pelo cliente são-lhe devolvidas.
Por exemplo, se o valor a pagar for 5 euros e 25 cêntimos e o cliente entregar uma moeda de 2 euros, três moedas de 1 euro e duas moedas de 50 cêntimos, o troco será composto por uma moeda de 50 cêntimos, uma moeda de 20 cêntimos e uma moeda de 5 cêntimos.
Existem sempre 2 linhas.
A primeira linha tem dois números inteiros, \(E\) e \(C\), que indicam que o valor da compra é \(E\) euros e \(C\) cêntimos. Pelo menos um destes números é positivo.
A segunda linha tem 8 números inteiros não negativos, \(n_1, n_2, \ldots, n_8\), que indicam o número de moedas de cada tipo entregues pelo cliente para efetuar o pagamento. Estes números são dados da moeda com maior valor à moeda com menor valor. Assim, \(n_1\) é o número de moedas de 2 euros entregues pelo cliente e \(n_8\) é o número de moedas de 1 cêntimo entregues pelo cliente.
\(0 \leq E \leq 1\,000\) | Euros do valor da compra |
\(0\leq C \leq 99\) | Cêntimos do valor da compra |
\(0 \leq n_i \leq 8\,000\) | Número de moedas de um tipo (com \(i=1,2,\ldots,8\)) |
Uma única linha com 8 inteiros não negativos, que indicam o número de moedas de cada tipo que serão dadas ao cliente. Caso o valor entregue pelo cliente seja superior ou igual ao valor da compra, essas moedas são o troco dado pelo Sr. Moeda. No caso contrário, essas moedas foram as entregues pelo cliente ao Sr. Moeda. Tal como na entrada, o primeiro número corresponde à moeda de 2 euros, o segundo número corresponde à moeda de 1 euro, e assim sucessivamente, respeitando a ordem decrescente do valor facial das moedas.
5 25 1 3 2 0 0 0 0 0
0 0 1 1 0 1 0 0
5 25 0 3 0 1 0 1 0 200
0 0 0 0 0 0 0 0
5 25 0 3 0 1 0 1 0 100
0 3 0 1 0 1 0 100