1
0
Fork 0
mirror of https://gitlab.com/mfocko/LeetCode.git synced 2024-11-14 18:07:32 +01:00
LeetCode/cs/count-good-nodes-in-binary-tree.cs

26 lines
698 B
C#
Raw Normal View History

/**
* Definition for a binary tree node.
* public class TreeNode {
* public int val;
* public TreeNode left;
* public TreeNode right;
* public TreeNode(int val=0, TreeNode left=null, TreeNode right=null) {
* this.val = val;
* this.left = left;
* this.right = right;
* }
* }
*/
public class Solution {
private int GoodNodes(TreeNode root, int m) {
if (root == null) {
return 0;
}
int newMax = Math.Max(m, root.val);
return (root.val >= m ? 1 : 0) + GoodNodes(root.left, newMax) + GoodNodes(root.right, newMax);
}
public int GoodNodes(TreeNode root) => GoodNodes(root, int.MinValue);
}