Module: O problema da mochila


Problem

6 /6


Rendição - 1

Problem

O comprador deseja comprar um produto no valor de S rublos. Ele tem notas N em denominações de P1, P2, ..., PN < /code> rublos. O vendedor tem notas de M nas denominações de Q1, Q2, ..., QM< /código>. rublos. Determine se eles podem pagar.
 
Entrada: 
- a primeira linha define a soma S;
- na segunda linha - número N;
- na terceira linha  - N números P1, P2, ..., PN ;
- na quarta linha - número M;
- na quinta linha - M números Q1, Q2, ..., QM< /sub>.
O número de notas do vendedor e do comprador e suas denominações não excede 100.
 
Saída: se o vendedor puder pagar ao comprador, imprima as denominações das notas que o comprador dá ao vendedor e que ele recebe como troco. Imprima o número com o sinal “+” se o comprador entregar a nota de valor correspondente ao vendedor e com o sinal “-” se o comprador recebe esta nota para troco. Separe as denominações das notas com um espaço.
Se eles não puderem pagar, imprima a string Impossível.
 

 

Exemplos
# Entrada Saída
1
10
3
3 9 14
2
6 2
-2 +9 +3
2
100
3
74 35 8
2
196
Impossível