Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- int rob(TreeNode* root) {
- return solveRob(root, true);
- }
- private:
- int solveRob(TreeNode* node, bool can_rob) {
- if (!node) return 0;
- int do_not_rob_res = solveRob(node->left, true) + solveRob(node->right, true);
- int rob_res = 0;
- if (can_rob)
- rob_res = node->val + solveRob(node->left, false) + solveRob(node->right, false);
- return max(do_not_rob_res, rob_res);
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement