Last Stone Weight II LeetCode solution in JavaScript
1var lastStoneWeightII = function (stones) {2var sum = stones.reduce((a, b) => a + b);3var target = Math.ceil(sum / 2);4var dp = new Array(target + 1).fill(0);5for (var i = 0; i < stones.length; i++) {6for (var j = target; j >= stones[i]; j--) {7dp[j] = Math.max(dp[j], dp[j - stones[i]] + stones[i]);8}9}10return Math.abs(2 * dp[target] - sum);11};