和为K

题目描述

给定一个含N个不同数的数列,任意从数组中选出若干不同的数(也可以选1个),使其和为K,请问有多少种不同的方案。

输入

第1行,输入两个整数N和K;(2≤N≤20,1≤K≤109
第2行,有N个用空格隔开的整数;(整数的值在[1,106之间])

输出

输出一个整数,代表方案数;

样例

输入:

5 6
2 1 4 5 3

输出:

3
查看思路与题解