Problem

6 /6


항복 - 1

Problem

구매자는 S 루블 가치의 제품을 구매하려고 합니다. 그는 P1, P2, ..., PN 단위의 N 지폐를 가지고 있습니다. < /code> 루블. 판매자는 Q1, Q2, ..., QMM 지폐를 가지고 있습니다. >< /코드>. 루블. 그들이 지불할 수 있는지 결정하십시오.
 
입력: 
- 첫 번째 줄은 합계 S를 설정합니다.
- 두 번째 줄 - 숫자 N;
- 세 번째 줄에서  - N 숫자 P1, P2, ..., PN ;
- 네 번째 줄 - 숫자 M;
- 다섯 번째 줄에서 - M 숫자 Q1, Q2, ..., QM< /서브>.
판매자와 구매자가 발행한 지폐의 수와 금액이 100장을 초과하지 않습니다.
 
출력: 판매자가 구매자에게 지불할 수 있는 경우 구매자가 판매자에게 주고 거스름돈으로 받는 지폐의 액면가를 인쇄합니다. 구매자가 해당 액면가의 지폐를 판매자에게 제공하는 경우 "+" 기호로 숫자를 인쇄하고 구매자가 판매자에게 "-" 기호를 제공하는 경우 숫자를 인쇄하십시오. 이 지폐를 거스름돈으로 받습니다. 지폐는 공백으로 구분합니다.
만약 지불할 수 없다면 Impossible 문자열을 출력하세요.
 

 

<헤드> <일># <몸>
입력 출력
1
10
<사업부>3
3 9 14
<사업부>2
6 2
-2 +9 +3
2
100
<사업부>3
74 35 8
<사업부>2
196
불가능