#P5384. [Cnoi2019] 雪松果树
[Cnoi2019] 雪松果树
题目背景
幻想乡,冬。
一年一度,生长在高山上的雪松果树又结果了。
Cirno 不知从哪弄到了 颗雪松果,然后很开心的吃掉了其中 颗,最后还剩最后 颗。
Cirn o因为以后吃不到雪松果而感到忧愁,于是决定种在美丽的雾之湖畔。
第一天,发芽。
第二天,雪松果树长成了一颗参天大树, 上面长满了雪松果。
Cirno 在雪松果成熟之前早有一些问题想知道,但现在她忙于收集雪松果,就把问题丢给了你。
题目描述
雪松果树是一个以 为根有着 个节点的树。
除此之外, Cirno还有 个询问,每个询问是一个二元组 ,表示询问 节点的 -cousin 有多少个。
我们定义:
节点 的 -father 为 路径 (不含 u)上距 u 最近的节点
节点 的 -father 为 节点 「 的 -father」 的 1-father
节点 的 -son 为所有 -father 为 的节点
节点 的 -cousin 为 节点「 的 -father」的 -son (不包含 本身)
输入格式
第一行,两个整数 ,
第二行, 个整数,第 个表示 号节点的 1-father
以下 行,每行一个二元组
输出格式
一行, 个数,每一个表示一个询问的答案。若 u 不存在 k-father,输出 0。
5 2
1 2 1 4
2 1
3 2
1 1
提示
数据范围:
对于0%-10%的数据
对于10%-20%的数据
对于 20%-30% 的数据
对于 30%-35% 的数据
对于 35%-50% 的数据
对于 50%-70% 的数据 保证树随机
对于 70%-100% 的数据
另外存在一组记 分的 hack 数据。