lc-go/solutions/1/q129/solution.go
2026-01-15 14:57:22 +09:00

33 lines
496 B
Go

package q129
type TreeNode struct {
Val int
Left *TreeNode
Right *TreeNode
}
func sumNums(node *TreeNode, prefix int) int {
prefix = prefix*10 + node.Val
if node.Left == nil && node.Right == nil {
return prefix
}
sum := 0
if node.Left != nil {
sum += sumNums(node.Left, prefix)
}
if node.Right != nil {
sum += sumNums(node.Right, prefix)
}
return sum
}
func sumNumbers(root *TreeNode) int {
if root == nil {
return 0
}
return sumNums(root, 0)
}
var _ = sumNumbers