Module: 背包问题


Problem

6 /6


投降 - 1

Problem

买家想要购买价值 S 卢布的产品。他有 N 张纸币,面值分别为 P1, P2, ..., PN 卢布。卖家有 M 面值的纸币 Q1, Q2, ..., QM< /代码>。卢布。确定他们是否可以付款。
 
输入: 
- 第一行设置总和 S;
- 第二行-数字N;
- 在第三行  - N 个数 P1, P2, ..., PN ;
- 在第四行 - number M;
- 在第五行 - M numbers Q1, Q2, ..., QM< /sub>.
买卖双方的纸币数量和面值不超过100。
 
输出: 如果卖方可以向买方付款,则打印买方提供给卖方以及他收到零钱的纸币面额。买家将相应面额的纸币给卖家时,印上“+”号,买家印上“-”号收到这张找零的钞票。用空格分隔纸币的面额。
如果他们不能支付,打印字符串Impossible
 

 

例子
<头> <日># <正文>
输入 输出
1
10
3
3 9 14
2
6 2
-2 +9 +3
2
100
3
74 35 8
2
196
不可能