CF1464F.My Beautiful Madness
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一棵树。我们将考虑树上的简单路径。用 (a,b) 表示从顶点 a 到顶点 b 的路径。定义一条路径的 d-邻域为树上所有距离该路径上至少一个顶点不超过 d 的顶点的集合(例如,0-邻域就是路径本身)。设 P 为树上路径的一个多重集,初始为空。你需要维护以下操作:
- 1 u v —— 将路径 (u,v) 加入 P(1≤u,v≤n)。
- 2 u v —— 从 P 中删除路径 (u,v)(1≤u,v≤n)。注意 (u,v) 等价于 (v,u)。例如,若 P={(1,2),(1,2)},则执行操作 2 2 1 后,P={(1,2)}。
- 3 d —— 若 P 中所有路径的 d-邻域的交集非空,则输出 "Yes",否则输出 "No"(0≤d≤n−1)。
输入格式
第一行包含两个整数 n 和 q,分别表示树的顶点数和操作数(1≤n≤2⋅105,2≤q≤2⋅105)。
接下来的 n−1 行,每行包含两个整数 xi 和 yi,表示第 i 条边连接的顶点编号(1≤xi,yi≤n)。
接下来的 q 行,每行一个操作,格式如题目描述所述。
保证:
- 对于操作 2 u v,路径 (u,v)(或 (v,u))一定在 P 中存在,
- 对于操作 3 d,P=∅,
- 至少有一个三类操作。
输出格式
对于每个三类操作,输出一行答案。
输入输出样例
输入#1
1 4 1 1 1 1 1 1 2 1 1 3 0
输出#1
Yes
输入#2
5 3 1 2 1 3 3 4 4 5 1 1 2 1 5 5 3 1
输出#2
No
输入#3
10 6 1 2 2 3 3 4 4 7 7 10 2 5 5 6 6 8 8 9 1 9 9 1 9 8 1 8 5 3 0 3 1 3 2
输出#3
No Yes Yes
说明/提示
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?