Home => ProblemSet => 4.2-20:目标和
Problem1349--4.2-20:目标和

1349: 4.2-20:目标和

Time Limit: 1 Sec  Memory Limit: 128 MB  Submit: 0  Solved: 4
[ Submit ] [ Status ] [ Creator: ][ 参考程序 ]

Description

给定一个非负整数数组,a1, a2, …, an, 和一个目标数,S。现在你有两个符号 + 和 -。对于数组中的任意一个整数,你都可以从 + 或 - 中选择一个符号添加在前面。
返回可以使最终数组和为目标数 S 的所有添加符号的方法数。
例如:
5 3
1 1 1 1 1
输出:5
解释: 
-1+1+1+1+1 = 3 
+1-1+1+1+1 = 3 
+1+1-1+1+1 = 3 
+1+1+1-1+1 = 3 
+1+1+1+1-1 = 3 
一共有5种方法让最终目标和为3。

Input

第一行n s,n表示接下来数列有n个数,s表示和
第二行n个数组成的数列

Output

和为s的方法数

Sample Input Copy

5 3
1 1 1 1 1

Sample Output Copy

5

HINT

1<= n < 21
1<= s < 10000

Source/Category