810 字
2 分钟
七影蝶的指引
时空限制
C/C++: 1s/256MB
其他语言:2s/512MB
题目背景
「所谓七影蝶,就是人的记忆残片……」
「生前留下过迷恋和悔恨的人们的『记忆』,就会以蝴蝶的姿态存在于这个世上。」
「……虽说只是记忆,但这并不是能留在世上的东西。」
「需要有人把它们指引到本来应该归返的地方。」
「这就是代代由空门家掌管的山之祭。」
「……有一份记忆,我是无论如何都必须找到的……」
为了完成空门家的职责和寻找那份无论如何都必须找到的记忆,空门苍需要在山之祭期间,将散落在山间的七影蝶指引向 迷途之橘。
题目描述
鸟白岛的山路可以看作一棵以节点 为根的树1,共有 个节点。
树的每个叶节点的深度(即到根节点的距离)均相同。
山路崎岖,夜色幽晦。安全起见,苍的行动必须遵循以下规则:
- 苍在 时刻 从 任意一个叶节点 出发,目标是到达「迷途之橘」所在山顶的根节点 。
- 苍可以花费 的时间,从当前节点移动到其 父节点。
- 苍可以 至多一次 借助稻荷的能力:花费 的时间,从当前深度为 的非根节点移动到深度为 的 任意节点。
- 当苍处于某个节点时,她能成功指引该位置的所有尚未消失(即当前时间 )的七影蝶。
为了尽可能多地让七影蝶归返,请你告诉苍最多能指引多少只七影蝶。
输入格式
每个测试包含多组测试用例。
- 第一行包含一个整数 (),表示测试用例的数量。
- 对于每个测试用例:
- 第一行包含两个整数 , (, ),分别表示树的节点数和七影蝶的数量。
- 接下来 行,每行包含两个整数 , (),表示树的一条边。
- 接下来 行,每行包含两个整数 , ( , ),表示第 只七影蝶的位置和消失时间。
数据保证所有测试用例中 的总和与 的总和均不超过 ,且保证给定的边构成一棵树,所有叶节点深度相同。
输出格式
对于每个测试用例,输出 个整数,表示苍最多能指引的七影蝶数。
样例
用例输入
33 21 21 33 01 16 31 21 32 42 53 66 12 11 18 51 21 32 43 64 56 76 85 24 26 83 11 5用例输出
223说明/提示
在第一个测试用例中,树以 为根, 和 均为叶节点。选择从节点 开始,时可以指引一只七影蝶,再移动到节点 , 时可以指引一只,因此答案为 。
Footnotes
-
一棵包含 个顶点的树是指一个具有 个顶点、 条边的无向连通图。有根树是在树中指定一个特殊的顶点作为根的树。 ↩
分享
如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时
相关文章 智能推荐






