#B3861. 子树和
子树和
题目描述
给你一棵 个结点的树,树的根结点是 。
每个结点的权值都是 ,你需要对每个结点 求出 的子树和,也就是子树中有多少个结点。
输入格式
第一行一个数 表示树的结点数。
之后 行,第 行输入一个数 表示 点的父亲是 ,保证 。
输出格式
输出 行,第 行一个数表示 点的子树和。
5
1
2
3
3
5
4
3
1
1
提示
对于 的数据,满足 。
给你一棵 n 个结点的树,树的根结点是 1。
每个结点的权值都是 1,你需要对每个结点 i 求出 i 的子树和,也就是子树中有多少个结点。
第一行一个数 n 表示树的结点数。
之后 n−1 行,第 i 行输入一个数 fi+1 表示 i+1 点的父亲是 fi+1,保证 fi+1<i+1。
输出 n 行,第 i 行一个数表示 i 点的子树和。
5
1
2
3
3
5
4
3
1
1
对于 100% 的数据,满足 1≤n≤1000。