#L0309. 古老的子集

古老的子集

题目背景

Special for beginners, ^_^

题目描述

给定一个长度为 n 的数组 a(全部为正整数)和一个目标值 S。

请判断:

是否存在一个古老子集,使得这些数的和恰好等于 S。

输入格式

第一行两个整数

n S

范围:

1 ≤ n ≤ 25 1 ≤ a[i] ≤ 10^9 1 ≤ S ≤ 10^18

第二行 n 个正整数。

输出格式

存在输出:

Yes

否则输出:

No

样例

5 9
3 4 5 2 7
Yes

样例解释

我们需要从数组中选择若干个数,使它们的和等于 9。

一种可行的选择是:

4 + 5 = 9

因此存在满足条件的子集,输出 Yes。

另外也可以选择:

3 + 2 + 4 = 9

同样满足条件。