mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
810 字
2 分钟
七影蝶的指引
2026-04-21

时空限制#

C/C++: 1s/256MB

其他语言:2s/512MB

题目背景#

「所谓七影蝶,就是人的记忆残片……」

「生前留下过迷恋和悔恨的人们的『记忆』,就会以蝴蝶的姿态存在于这个世上。」

「……虽说只是记忆,但这并不是能留在世上的东西。」

「需要有人把它们指引到本来应该归返的地方。」

「这就是代代由空门家掌管的山之祭。」

「……有一份记忆,我是无论如何都必须找到的……」

为了完成空门家的职责和寻找那份无论如何都必须找到的记忆,空门苍需要在山之祭期间,将散落在山间的七影蝶指引向 迷途之橘

题目描述#

鸟白岛的山路可以看作一棵以节点 11 为根的树1,共有 nn 个节点。

树的每个叶节点的深度(即到根节点的距离)均相同。

山路崎岖,夜色幽晦。安全起见,苍的行动必须遵循以下规则:

  1. 苍在 00 时刻 从 任意一个叶节点 出发,目标是到达「迷途之橘」所在山顶的根节点 11
  2. 苍可以花费 11 的时间,从当前节点移动到其 父节点
  3. 苍可以 至多一次 借助稻荷的能力:花费 11 的时间,从当前深度为 dd 的非根节点移动到深度为 d1d-1任意节点
  4. 当苍处于某个节点时,她能成功指引该位置的所有尚未消失(即当前时间 ti\le t_i)的七影蝶。

为了尽可能多地让七影蝶归返,请你告诉苍最多能指引多少只七影蝶。

输入格式#

每个测试包含多组测试用例。

  • 第一行包含一个整数 TT (1T1041 ≤ T ≤ 10^4),表示测试用例的数量。
  • 对于每个测试用例:
    • 第一行包含两个整数 nn , mm (2n2×1052 \le n \le 2×10^5, 0m2×1050 \le m \le 2×10^5),分别表示树的节点数和七影蝶的数量。
    • 接下来 n1n-1 行,每行包含两个整数 uiu_i , viv_i (1ui,vin1 \le u_i, v_i \le n),表示树的一条边。
    • 接下来 mm 行,每行包含两个整数 aia_i , tit_i (1ain1 \le a_i \le n , 0tin0 \le t_i \le n),表示第 ii 只七影蝶的位置和消失时间。

数据保证所有测试用例中 nn 的总和与 mm 的总和均不超过 2×1052×10^5,且保证给定的边构成一棵树,所有叶节点深度相同。

输出格式#

对于每个测试用例,输出 11 个整数,表示苍最多能指引的七影蝶数。

样例#

用例输入#

3
3 2
1 2
1 3
3 0
1 1
6 3
1 2
1 3
2 4
2 5
3 6
6 1
2 1
1 1
8 5
1 2
1 3
2 4
3 6
4 5
6 7
6 8
5 2
4 2
6 8
3 1
1 5

用例输出#

2
2
3

说明/提示#

在第一个测试用例中,树以 11 为根,2233 均为叶节点。选择从节点 33 开始,t=0t=0时可以指引一只七影蝶,再移动到节点 11t=1t=1 时可以指引一只,因此答案为 22

Footnotes#

  1. 一棵包含 nn 个顶点的树是指一个具有 nn 个顶点、n1n-1 条边的无向连通图。有根树是在树中指定一个特殊的顶点作为根的树。

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

七影蝶的指引
https://ac.nowcoder.com/acm/contest/128674/C
作者
Amekai
发布于
2026-04-21
许可协议
Unlicensed

部分信息可能已经过时

目录