2224: 找更多硬币

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:38 Solved:6

Description

伊娃喜欢从整个宇宙中收集硬币。

有一天,她去了一家宇宙购物中心购物,结账时可以使用各种硬币付款。

但是,有一个特殊的付款要求:每张帐单,她都必须准确的支付所消费金额。

给定她拥有的所有硬币的面额,请你帮她确定对于给定的金额,她能否找到一些硬币来支付。

Input

第一行包含两个整数 N M,分别表示硬币数量以及需要支付的金额。

第二行包含 N 个整数,表示每个硬币的面额。

Output

共一行,按照面额升序的顺序,输出用来支付的所有硬币的面额。

如果支付方式不唯一,则输出最小的支付面额序列。

如果无解,则输出 No Solution

对于两个序列 {A[1], A[2], ...}  {B[1], B[2], ...},如果存在k≥1 使得所有 i<k,满足 A[i]=B[i] 成立,并且 A[k]<B[k],则我们称序列 A 小于序列 B

Sample Input Copy

8 9
5 9 8 7 2 3 4 1

Sample Output Copy

1 3 5

HINT

输入样例2

4 8

7 2 4 3

输出样例2

No Solution

数据范围:1≤N≤104 1≤M≤100,硬币面值不超过 100。


Source/Category