Insufficient Nodes in Root to Leaf Paths LeetCode solution in JavaScript

1
var sufficientSubset = function (root, limit) {
2
const MIN = Number.MIN_SAFE_INTEGER;
3
const sum = removeNodes(root, 0);
4

5
if (sum < limit) return null;
6

7
return root;
8

9
function removeNodes(node, prevSum) {
10
if (node == null) return MIN;
11
if (node.left == node.right) return node.val + prevSum;
12

13
const leftSum = removeNodes(node.left, prevSum + node.val);
14
const rightSum = removeNodes(node.right, prevSum + node.val);
15

16
if (leftSum < limit) node.left = null;
17
if (rightSum < limit) node.right = null;
18

19
if (node.left == node.right) return MIN;
20

21
return node.left == null ? rightSum : leftSum;
22
}
23
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0