diff --git a/Dynamic Programming/Last Stone Weight II minimum subset problem b/Dynamic Programming/Last Stone Weight II minimum subset problem new file mode 100644 index 0000000..3c01211 --- /dev/null +++ b/Dynamic Programming/Last Stone Weight II minimum subset problem @@ -0,0 +1,45 @@ + int lastStoneWeightII(vector& stones) + { + int n=stones.size(); + int sum=0; + for(int i=0;ij) + { + dp[i][j]=dp[i-1][j]; + } + else if(stones[i-1]<=j) + { + dp[i][j]=dp[i-1][j-stones[i-1]]||dp[i-1][j]; + } + } + } + int maxi=0; + for(int j=0;j<=sum/2;j++) + { + if(dp[n][j]) + maxi=max(maxi,j); + } + return abs(2*maxi-sum); + }