一道站外题(noip.ybtoj.com.cn)
  • 板块学术版
  • 楼主XiaoQuQu
  • 当前回复1
  • 已保存回复1
  • 发布时间2021/7/10 10:28
  • 上次更新2023/11/4 15:10:09
查看原帖
一道站外题(noip.ybtoj.com.cn)
427623
XiaoQuQu楼主2021/7/10 10:28

题目描述

现在有 nn 个知识点,除了 11 号知识点“初识语言”外,每个知识点有且仅有一个前置技能,它们构成了一棵以 11 为根节点的树。如果想要学习第 ii 个知识点,那么一定要保证第 ii 个知识点的前置技能 aia_i 已经在之前学会了。

小Z精力旺盛,他一天可以学会至多 kk 个知识点,但是学习的时候会打乱顺序,所以当天学习的知识点的前置技能一定要保证在之前的某一天已经学会了,而不能在同一天学习。

现在小Z想要知道至少需要多少天才能把 nn 个知识全部学会。小Z想要通过多次询问来找到最适合自己的学习方式,所以他会询问你 qq 次,每次给定一个kk,请你求出至少需要的天数。

Input

第一行两个数字 n,qn,q

第二行 qq 个数字,表示询问的 kk

第三行 n1n-1 个数字,第 ii 个表示 ai1a_{i-1}

Output

共一行,qq个数字,分别表示第 ii 个询问的最少天数。

数据范围

n,q,k<106n,q,k<10^6

样例输入 1

5 2 1 3 1 1 2 3

样例输出 1

5 3

解释

k=1k=1 时,1,2,3,4,5{1},{2},{3},{4},{5}

k=3k=31,23,451,2 3,45

另:

http://noip.ybtoj.com.cn/contest/133/problem/3 正在比赛(当然我已经结束了) 侵权紫杉

2021/7/10 10:28
加载中...