Count Nodes Equal to Average of Subtree LeetCode solution in Python

1
class Solution:
2
def averageOfSubtree(self, root: Optional[TreeNode]) -> int:
3

4
def calculate_average(root):
5
if root:
6
self.summ += root.val
7
self.nodecount += 1
8
calculate_average(root.left)
9
calculate_average(root.right)
10

11
def calculate_for_each_node(root):
12
if root:
13
self.summ = 0
14
self.nodecount = 0
15
calculate_average(root)
16
if ((self.summ) // (self.nodecount)) == root.val:
17
self.count += 1
18
calculate_for_each_node(root.left)
19
calculate_for_each_node(root.right)
20

21
self.count = 0
22
calculate_for_each_node(root)
23
return self.count

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0