1
var pathSum = function (root, sum, presums = { 0: 1 }, prev = 0) {
2
if (!root) return 0;
3
let curr = prev + root.val;
4
presums[curr] = (presums[curr] || 0) + 1;
5
let res = (presums[curr - sum] || 0) - !sum;
6
res +=
7
pathSum(root.left, sum, presums, curr) +
8
pathSum(root.right, sum, presums, curr);
9
presums[curr]--;
10
return res;
11
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0