统计给定二叉树的所有子树中完全二叉树的数量
时间限制
1.0 s
内存限制
512.0 MB
题目描述
给定一棵包含$n$个结点的有根二叉树,结点依次以$1,2,\dots,n$编号,根结点编号为$1$。
对于结点$i$,其左儿子的编号记为$l_i$,右儿子编号记为$r_i$。特别地,如果左儿子不存在则$l_i=0$,如果右儿子不存在则$r_i=0$。
树中每个结点都对应一棵以其为根的子树。请你求出给定有根树的所有$n$棵子树中,有多少棵子树是完全二叉树。
输入格式
第一行一个正整数$n$,表示有根二叉树结点数量。
接下来$n$行,每行两个正整数$l_i, r_i$,表示结点$i$的左儿子编号和右儿子编号。
输出格式
输出一行一个整数,表示所有子树中完全二叉树的数量。
样例
输入样例1
4
2 3
4 0
0 0
0 0
输出样例1
4
输入样例2
4
2 3
0 0
4 0
0 0
输出样例2
3
数据范围
- 对于部分测试点,满足$1 < n < 500$
- 对于所有测试点,满足$1 \leq n \leq 10^5$
本题为编程题,提交代码并运行通过测试点后判分。
正在加载题目数据…
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析