Skip to content

Commit 48ec339

Browse files
authored
Create 1530-number-of-good-leaf-nodes-pairs.js
1 parent 61194de commit 48ec339

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed
+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
/**
2+
* Definition for a binary tree node.
3+
* function TreeNode(val, left, right) {
4+
* this.val = (val===undefined ? 0 : val)
5+
* this.left = (left===undefined ? null : left)
6+
* this.right = (right===undefined ? null : right)
7+
* }
8+
*/
9+
/**
10+
* @param {TreeNode} root
11+
* @param {number} distance
12+
* @return {number}
13+
*/
14+
const countPairs = function(root, distance) {
15+
let res = 0
16+
traverse(root)
17+
return res
18+
19+
20+
function traverse(node) {
21+
if(node == null) return []
22+
if(node.left == null && node.right == null) return [0]
23+
24+
const left = traverse(node.left)
25+
const right = traverse(node.right)
26+
for(let i = 0; i < left.length; i++) {
27+
for(let j = 0; j < right.length; j++) {
28+
if(left[i] + right[j] + 2 <= distance) res++
29+
}
30+
}
31+
32+
return [...left.map(e => e + 1), ...right.map(e => e + 1)]
33+
}
34+
};

0 commit comments

Comments
 (0)