class Solution {
public:
int findTargetSumWays(vector<int>& nums, int S) {
int sum = 0;
for(int ch : nums){
sum += ch;
}
if(sum < S)
return 0;
if((sum + S)%2)
return 0;
int w = (sum + S)/2;
vector<int> dp(w+1);
dp[0] = 1;
for(int i : nums){
for(int j = w;j >= i;j--){
dp[j] += dp[j-i];
}
}
return dp[w];
}
};
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交