Leetcode: 1315. Sum of Nodes with Even-Valued Grandparent

题目:

思路:

呃,我知道要用DFS,但乍看题目看不懂什麽是even-value的意思,所以只好看Hint跟Discussion
 
 
 

重新翻译题目

二元树中,如果现在节点的上上层节点的值是偶数,就把现在节点的值sum起来
 
 

程序码

class Solution {
public:
    int sumEvenGrandparent(TreeNode* root) {
        return sum(root, NULL, NULL); // root没父没祖母
    }
private:
    int sum(TreeNode* curr_node, TreeNode* parent, TreeNode* grandParent) {
        if (curr_node == NULL) {
            return 0;
        }
        int addition = 0;
        if (grandParent != NULL) 
            addition = curr_node->val;
        
        TreeNode* Im_even_node= NULL;
        if (curr_node->val % 2 == 0)
            Im_even_node = curr_node;

        return addition + sum(curr_node->left, Im_even_node, parent) + sum(curr_node->right, Im_even_node, parent);
    }

};

参考:
https://leetcode.com/problems/sum-of-nodes-with-even-valued-grandparent/discuss/477095/Easy-DFS-solution


<<:  [Day 13] - 初探永丰银行线上收款API - 丰收款 - 取得Nonce

>>:  DAY 13 - 时钟怪 (2)

【Side Project】 订单清单 - 画面设计

我们在之前的篇章中已经有规划了这部分的流程与一些必备元素。 我们这篇就来构思一下老板在接收到订单时,...

Day2-为小学生撰写的网站小游戏_template精简程序码

昨天写的小网站後续看文章时觉得有一部分JS有硬干的嫌疑(?) 所以把一些部分做了改动 首先使用了HT...

[Day 29] Reactive Programming - RSocket (Hello World) Part 1

前言 对RSocket有基本的了解之後,照惯例要来做一个简单的实作,内容参考Josh Long的Th...

Day04-入口管制(三)

前言 前两天讲完基本的格式、语义检查後,今天特别来讲一下关於 email 的部分 大部分网站希望使用...

DAY5 Python基础教学(二)

DAY5 Python基础教学-List 前言 List结构非常重要,它跟C语言中的array很像,...