代码拉取完成,页面将自动刷新
/**
* @param {number[]} parents
* @return {number}
*/
var countHighestScoreNodes = function(parents) {
const nodes = parents.map(p => ({ val: 1 }));
parents.slice(1, parents.length).forEach((p, i) => {
if(nodes[p].left) {
nodes[p].right = nodes[i + 1];
} else {
nodes[p].left = nodes[i + 1];
}
});
const calc = (node) => {
if(node.left) {
node.val += calc(node.left);
}
if(node.right) {
node.val += calc(node.right);
}
return node.val;
};
calc(nodes[0]);
let max = 0;
let cnt = 0;
const traverse = (node) => {
if(!node) {
return;
}
let val = 1;
if(node.left) {
val *= node.left.val;
}
if(node.right) {
val *= node.right.val;
}
if(nodes[0].val - node.val > 0) {
val *= (nodes[0].val - node.val);
}
// console.log(val);
if(val === max) {
cnt ++;
} else if (val > max) {
cnt = 1;
max = val;
}
traverse(node.left);
traverse(node.right);
}
traverse(nodes[0]);
return cnt;
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。