1class Solution {2public:3void sumGparent(TreeNode *child, int &sum, TreeNode *parent, TreeNode *Gparent) {4if (!child) return;5if (Gparent)6if (Gparent->val % 2 == 0) sum += child->val;7sumGparent(child->left, sum, child, parent);8sumGparent(child->right, sum, child, parent);9}1011int sumEvenGrandparent(TreeNode *root) {12if (!root) return 0;13int sum = 0;14sumGparent(root, sum, NULL, NULL); // (child, sum, parent, grand-parent)15return sum;16}17};