题目名称 | 2256. 树上的游戏 |
---|---|
输入输出 | treegame.in/out |
难度等级 | ★★ |
时间限制 | 2000 ms (2 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | mouse 于2016-04-19加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:19, 提交:46, 通过率:41.3% | ||||
铁策 | 100 | 2.150 s | 6.60 MiB | C++ |
stone | 100 | 2.355 s | 10.23 MiB | C++ |
Zayin | 100 | 2.478 s | 19.20 MiB | C++ |
ZXCVBNM_1 | 100 | 2.505 s | 9.66 MiB | C++ |
_Horizon | 100 | 2.516 s | 6.42 MiB | C++ |
asddddd | 100 | 2.764 s | 6.72 MiB | C++ |
KZNS | 100 | 3.072 s | 4.52 MiB | C++ |
Ostmbh | 100 | 3.313 s | 4.31 MiB | C++ |
debug | 100 | 3.328 s | 29.54 MiB | C++ |
debug | 100 | 3.499 s | 29.54 MiB | C++ |
本题关联比赛 | |||
20160420s |
关于 树上的游戏 的近10条评论(全部评论) |
---|
jmy 在大家的帮助下终于成功破解了咒语。但是他很不服气,于是又准备和 lkf 玩游戏,想要赢回来。
由于之前一直在找最小生成树,jmy 想到了一个树上的游戏:给定一棵树,lkf 先在这棵树上加一条边(可能出现重边),jmy 需要删掉其中的一条边,如果剩下的还是一棵树则 jmy 赢,否则 lkf 赢。
问题是,现在 jmy 不知道 lkf 会加哪一条边,也不知道自己应该删掉哪一条边。于是现 在 jmy 臆测出了许多种可能,作为 jmy 的好朋友,你要告诉他:如果 lkf 在编号为 x 的点和 编号为 y 的点之间加一条边,jmy 删掉第 z 条边(边按照输入的顺序编号,不包括新加的边)是否能赢。
第一行一个正整数 n,表示节点个数。
接下来 n-1 行,每行两个正整数 x,y,表示原来树上存在一条连接编号为 x 的节点和编号为 y 的节点的边。
第 n+1 行一个正整数 Q,表示询问次数。
接下来 Q 行,每行三个正整数 x,y,z,表示一个询问(含义如题所示)。
输出共 Q 行。对于每一个询问输出一行,如果 lkf 会赢就输出”YES”,否则输出”NO”。
5
1 2
2 3
2 4
4 5
3
2 5 3
2 3 1
1 5 2
NO
YES
YES
【数据规模】
对于 20%的数据,保证 n,Q≤1,000;
对于另外 20%的数据,保证 n,Q≤10,000 且树为随机生成;
对于 70%的数据,保证 n,Q≤200,000;
对于 100%的数据,保证 n≤200,000,Q≤2,000,000。
在此键入。