337. House Robber III - cocoder39/coco39_LC GitHub Wiki
class Solution:
def rob(self, root: Optional[TreeNode]) -> int:
return max(self.helper(root))
def helper(self, root: TreeNode) -> List[int]:
if not root:
return [0, 0]
left = self.helper(root.left)
right = self.helper(root.right)
notRob = max(left) + max(right)
rob = root.val + left[0] + right[0]
return [notRob, rob]