Advertisement
nikunjsoni

494

Jun 12th, 2021
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.47 KB | None | 0 0
  1. class Solution {
  2. public:
  3.     int findTargetSumWays(vector<int>& nums, int target) {
  4.         int size=nums.size(), sum=0;
  5.         for(int n: nums) sum+=n;
  6.         if(target>sum || (sum+target)&1) return 0;
  7.         int s1 = (target+sum)/2;
  8.         vector<int> dp(s1+1, 0);
  9.         dp[0] = 1;
  10.         for(int i=0; i<size; i++){
  11.             for(int j=s1; j>=nums[i]; j--){
  12.                 dp[j] += dp[j-nums[i]];
  13.             }
  14.         }
  15.         return dp[s1];
  16.     }
  17. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement