#197. 满二叉树

满二叉树

满二叉树

题目描述

给定一棵包含 nn 个结点的有根二叉树,结点依次以 1n1 \dots n 编号,根结点编号为 1。

对于结点 ii,其左儿子的编号记为 lil_i,右儿子编号记为 rir_i。特别地,如果左儿子不存在则 li=0l_i = 0,如果右儿子不存在则 ri=0r_i = 0

树中每个结点都对应一棵以其为根的子树。请你求出给定有根树的所有 nn 棵子树中,有多少棵子树是满二叉树。

满二叉树是指所有叶子深度均相同,且除叶子外均有两个儿子的二叉树。

输入格式

  • 第一行,一个正整数 nn,表示有根二叉树结点数量;
  • 接下来 nn 行,每行两个非负整数 lil_irir_i,表示结点 ii 的左儿子编号和右儿子编号,整数之间以空格分隔。

输出格式

输出一行,一个整数,表示所有子树中满二叉树的数量。

数据范围

对于所有测试点,保证 1n1051 \le n \le 10^5

样例

输入样例 1

4
2 3
4 0
0 0
0 0

输出样例 1

2

样例解释

结点 3、4 的子树是满二叉树(单个叶子节点),结点 2 只有左儿子,结点 1 的两个儿子深度不同,故答案为 2。