题目名称 2856. [洛谷3950]部落冲突
输入输出 lct.in/out
难度等级 ★★★☆
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 100
题目来源 GravatarShirry 于2017-10-28加入
开放分组 全部用户
提交状态
分类标签
连通性 树链剖分 树上差分
分享题解
通过:41, 提交:100, 通过率:41%
Gravatar233ahah 100 2.378 s 40.41 MiB C++
Gravatarrewine 100 3.579 s 15.24 MiB C++
GravatarAAAAAAAAAA 100 4.457 s 17.48 MiB C++
Gravatar-1 100 4.655 s 19.77 MiB C++
Gravatar雾茗 100 4.679 s 19.27 MiB C++
GravatarBaDBoY 100 4.708 s 16.66 MiB C++
GravatarCeres 100 4.967 s 17.19 MiB C++
GravatarYoungsc 100 5.745 s 58.19 MiB C++
Gravatar~玖湫~ 100 5.884 s 18.91 MiB C++
Gravatarユッキー 100 5.972 s 20.92 MiB C++
关于 部落冲突 的近10条评论(全部评论)
Gravatar┭┮﹏┭┮
2023-12-10 12:44 13楼
不会LCT,只能树剖
数据点真多...
Gravatar┭┮﹏┭┮
2023-12-10 12:43 12楼
百点大题。。。。。树状数组+树剖还是很快的
GravatarAAAAAAAAAA
2017-10-31 20:55 11楼
论此题和BZOJ2049的差异...
GravatarCooook
2017-10-30 19:36 10楼
scanf卡常
Gravatar@@@
2017-10-30 15:59 9楼
终于写完了!!!用了ST(O(nlgn)在洛谷上TLE2个点)A了,心累;
Gravatarサイタマ
2017-10-30 01:59 8楼
回复 @Shirry :
好吧qwq
GravatarHzoi_Mafia
2017-10-29 17:02 7楼
纠正了一发树剖板子。
GravatarFisher.
2017-10-29 15:00 6楼
论"YES"与"Yes"的区别
GravatarLovelove_boii
2017-10-29 12:52 5楼
回复 @Hzoi_Mafia :
写法有很多…比如我就没用lct和树剖
GravatarShirry
2017-10-29 08:16 4楼

2856. [洛谷3950]部落冲突

★★★☆   输入文件:lct.in   输出文件:lct.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

在一个叫做Travian的世界里,生活着各个大大小小的部落。其中最为强大的是罗马、高卢和日耳曼。他们之间为了争夺资源和土地,进行了无数次的战斗。期间诞生了众多家喻户晓的英雄人物,也留下了许多可歌可泣的动人故事。

其中,在大大小小的部落之间,会有一些道路相连,这些道路是Travian世界里的重要枢纽,简单起见,你可以把这些部落与部落之间相连的道路看作一颗树,可见每条道路对于Travian世界的重要程度。有了这些道路,建筑工人就可以通过这些道路进行友好外交啦。

然而,事情并不会像想象的那样美好,由于资源的匮乏,相邻的部落(由一条道路相连的部落)之间经常会发生大大小小的冲突事件,更有甚者,会升级为部落之间的大型战争。

为了避免误伤,每当两个相邻的部落之间发生大型战争之时,这两个部落间的道路是不允许通行的,对于一些强大的部落,甚至能与多个相邻的部落同时开战,同样的,这些战争地带的道路十分危险,是不可通行的。

天下之势,分久必合,当两个部落经历了不打不相识的苦战之后,他们可以签订停战协议(暂时停战,以后依旧可能再次开战),这样,两个部落之间的道路又会重新恢复为可通行状态,建筑工人们又可以经过此地购买最新的大本营设计图纸来强大自己的部落了。

为了简单起见,我们把各大战争事件按发起的时间顺序依次编号(最先发起的战争编号就为 1,第二次战争编号就为 2,以此类推),当两个部落停战之时,则会直接告诉你这场战争的编号,然后这场战争就载入了史册,不复存在了,当然,这并不会影响到其他战争的编号。

建筑工人十分讨厌战争,因为战争,想从一个部落到另一个部落进行友好交流的建筑工人可能就此白跑一趟。所以,在他们出发之前,都会向你问问能不能到达他们想去的部落。


【输入格式】

第一行两个数 $n$ 和 $m$,$n$ 代表了一共有 $n$ 个部落,$m$ 代表了以上三种事件发生的总数。

接下来的 $n-1$ 行,每行两个数 $p,q$,代表了第 $p$ 个部落与第 $q$ 个部落之间有一条道路相连。

接下来的 $m$ 行,每行表示一件事,详见题目描述。

【输出格式】

每行一个“Yes”或者“No”,表示从第 $p$ 个部落出发的建筑工人能否到达第 $q$ 个部落。

【样例输入】

5 9
1 2
2 3
3 4
4 5
Q 1 4
C 2 1
C 4 3
Q 3 1
Q 1 5
U 1
U 2
C 4 3
Q 3 4

【样例输出】

Yes
No
No
No

【提示】

对于 30% 的数据 $1\le n,m\le 6000$。

对于另 30% 的数据,保证部落之间的地理关系是一条链,且 $i$ 与 $i+1$ 之间有一条道路。

对于另 30% 的数据,$1\le n,m\le 100000$。

对于 100% 的数据,$1\le n,m\le 300000$。

【来源】

NOIP 模拟赛 by WISCO信息组