阴阳子树
You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
题目背景
在中国传统的阴阳学说中,阴阳代表着事物的两种对立又统一的状态,二者共存方为平衡。小明受此启发,将树结构中的节点赋予 “阴”(白色)与 “阳”(黑色)两种状态,构建了一个动态变化的 “阴阳树” 模型。初始时,所有节点均为 “阴”(白色),随着节点按顺序被染成 “阳”(黑色),树中以各节点为根的子树会因阴阳状态的变化而呈现不同的特性。其中,阴阳子树定义为子树内同时存在阴阳两种状态的节点,象征着阴阳调和的局部结构。小明希望通过分析每次染色后阴阳子树的数量变化,探索树结构中阴阳状态的动态平衡规律。
题目描述
小明构建了一棵以 号节点为根的有根树,初始时所有节点均为白色(阴)。给定一个长度为 的排列 ,表示节点的染色顺序:第 次操作将节点 染成黑色(阳),且颜色一旦改变便不再恢复。定义阴阳子树为:以某个节点为根的子树(包含该节点及其所有后代)中,同时存在黑色(阳)和白色(阴)节点。每次染色操作后,需要输出当前树中阴阳子树的个数,以反映树结构中阴阳共存的局部区域数量变化。
输入格式
输入数据第一行包含一个正整数 ,为树的节点数。
输入数据的第二行包含 个正整数 ,其中第 个整数 代表节点 的父亲.
输入数据的第三行包含 个由空格隔开的正整数,为节点染色的顺序。
输出格式
共包含 个整数,第 个整数为第 次染色后阴阳子树的个数。每个整数间以一个空格分隔
样例
输入
6
1 1 2 3 3
2 4 6 1 3 5
输出
2 1 2 2 2 0
样例解释
对于第一个样例: 初始状态
第一次染色
号节点符合要求
第二次染色
号节点符合要求
第三次染色
号节点符合要求
第四次染色
号节点符合要求
第五次染色
号节点符合要求
第六次染色
无结点符合要求
限制与约定
对于 的样例 保证
对于 的样例 保证 , 并且保证给出的 是一个排列
- 时间限制:
- 空间限制:
竞赛A班5.5日
- Status
- Done
- Rule
- IOI
- Problem
- 5
- Start at
- 2025-5-5 13:00
- End at
- 2025-5-19 13:00
- Duration
- 336 hour(s)
- Host
- Partic.
- 5