AT_past19_h 加算と乗算
Description
整数 $ S $ と $ N $ 個の整数 $ a_1,a_2,\dots,a_N $ が与えられます。
$ N $ 個の整数と $ +, \times $ を使って、値が $ S $ になる数式を作ることは出来ますか?
ただし、
- $ N $ 個の整数はちょうど $ 1 $ 回ずつ使ってください。
- 整数の順番は自由に入れ替えてもよいです。
- 括弧を使ってはいけません。
- 整数同士を演算子を使用せずにつなげる行為 (例えば $ 1 $ と $ 2 $ から $ 12 $ を作る) は認められません。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ S $ $ a_1 $ $ a_2 $ $ \dots $ $ a_N $
Output Format
値が $ S $ になる数式を作れない場合は `No` を出力せよ。
作れる場合は以下の形式で出力せよ。ここで $ E $ は問題文の条件を満たす式とする。
> Yes $ E $
数式は間に空白を入れずに $ 1 $ 行で出力せよ。また、 $ +, \times $ を意味する記号はそれぞれ `+`, `x` とする。
例えば出力したい数式が $ 1 \times 2 + 3 \times 4 \times 5 $ である場合は以下のように出力する必要がある。
```
1x2+3x4x5
```
答えが複数ある場合は、どれも出力しても正解とみなされる。
Explanation/Hint
### Sample Explanation 1
$ 1 + 2 \times 5 $ という式は問題文の条件を全て満たすので、これを出力すればよいです。
また、 $ 2 \times 5 + 1 $ という式も問題文の条件を全て満たすので、これを出力しても正解とみなされます。
### Sample Explanation 2
同じ整数が $ a_1, a_2, \dots, a_N $ に複数回登場する場合は、登場する回数の分だけ使用してください。
### Constraints
- $ 2 \leq N \leq 6 $
- $ 1 \leq S \leq 10^{18} $
- $ 1 \leq a_i \leq 1000 $
- 入力される値は全て整数