LG-B3861. 【GESP强化 六级】子树和

提交1 通过1
通过率100%
时间限制1000ms
内存限制128MiB
    ID: 10356 传统题 1000ms 128MiB 尝试: 1 已通过: 1 难度: 普及- 上传者: 标签>GESPGESP强化C++c++编程题洛谷公开题树形数据结构多叉树

题目描述

题目描述

给你一棵 nn 个结点的树,树的根结点是 11。

每个结点的权值都是 11,你需要对每个结点 ii 求出 ii 的子树和,也就是子树中有多少个结点。

输入格式

第一行一个数 nn 表示树的结点数。

之后 n−1n-1 行,第 ii 行输入一个数 fi+1f_{i+1} 表示 i+1i+1 点的父亲是 fi+1f_{i+1}。

输出格式

输出 nn 行,第 ii 行一个数表示 ii 点的子树和。

5
1
2
3
3
5
4
3
1
1
1
1
2
1
2
1

说明/提示

数据范围

对于 100%100\% 的数据,满足 1≤n≤10001\le n\le 1000。

保证 fi+1<i+1f_{i+1}<i+1。