Path Sum III - Problem
Given the root of a binary tree and an integer targetSum, return the number of paths where the sum of the values along the path equals targetSum.
The path does not need to start or end at the root or a leaf, but it must go downwards (i.e., traveling only from parent nodes to child nodes).
A path can start from any node and end at any descendant of that node, as long as the direction is always downward.
Input & Output
Example 1 — Basic Tree
$
Input:
root = [10,5,-3,3,2,null,11,3,-2,null,1], targetSum = 8
›
Output:
3
💡 Note:
Three paths sum to 8: (5→3), (5→2→1), and (-3→11)
Example 2 — Simple Tree
$
Input:
root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22
›
Output:
3
💡 Note:
Paths: (5→4→11→2), (5→8→4→5), and (4→11→7)
Example 3 — Single Node
$
Input:
root = [1], targetSum = 1
›
Output:
1
💡 Note:
Only one node with value 1, which equals targetSum
Constraints
- The number of nodes in the tree is in the range [0, 1000]
- -109 ≤ Node.val ≤ 109
- -1000 ≤ targetSum ≤ 1000
Visualization
Tap to expand
Understanding the Visualization
1
Input Tree
Binary tree with integer values and target sum
2
Find Paths
Identify all downward paths summing to target
3
Count Result
Return total number of valid paths
Key Takeaway
🎯 Key Insight: Use prefix sums to avoid recalculating overlapping path segments
💡
Explanation
AI Ready
💡 Suggestion
Tab
to accept
Esc
to dismiss
// Output will appear here after running code