Count Good Nodes in Binary Tree
Beginner Mode

Problem Statement

Given a binary tree root, a node X in the tree is named good if in the path from root to X there are no nodes with a value greater than X.

Return the number of good nodes in the binary tree.

Additional information

  • The number of nodes in the binary tree is in the range [1, 10^5].
  • Each node's value is between [-10^4, 10^4].

Example 1:

Input: root = [3, 1, 4, 3, null, 1, 5]

Output: 4

Explanation: * Root Node (3) is always a good node.

  • Node 4 -> (3, 4) is the maximum value in the path.
  • Node 5 -> (3, 4, 5) is the maximum value in the path.
  • Node 3 -> (3, 1, 3) is the maximum value in the path.

Example 2:

Input: root = [3, 3, null, 4, 2]

Output: 3

Explanation: * Node 2 -> (3, 3, 2) is not good, because 3 is higher than it.

Example 3:

Input: root = [1]

Output: 1
Quick Solution

Code Environment

Sign in or try as guest to run your code.

Sign In

Track

Question Difficulty Company Access
Need more practice in this area? Explore more questions →