3685: 历史
题目描述
根据某个奇怪的国家的史书记载,这个国家有n个城市(从0开始标号),但一开始所有城市之间都没有道路相连。
每一年,在位的国王会修建一条双向道路(x,y),一条路可能被修建多次,不会修建起点和终点为同一个城市的道路。
在这之间,国王会进行若干次旅行。对于计划进行的一次旅行st->en,如果当时能完成这次旅行,而t年前不能完成这次旅行,那么国王会对之前的建设成果感到满意,否则他会很生气,并在下一次计划旅行前都让史官记录下错误的修建道路的消息,即把x,y记作(x + n - c), (y + n - c)。
当然在这些年中也发生了若干次国王的交替,初始国王的c值为0,而每个国王的c值不一定相同,但在国王在位期间c值不会发生改变,新上位的国王开始处于不生气的状态。
求国王每次对于计划旅行是否满意。
输入
第一行两个整数n,m,表示初始城市数和历史记载的内容数。
接下来m行,每行是3种格式之一:
1.K v,表示国王交替,新国王的c值为v。
2.R x y,表示史书上记载的是国王修建了(x,y)的道路,但注意这个记录可能不是实际情况。
3.T st en t,表示国王计划进行的一次st->en的旅行,且比较的是t年前的情况(国王可能会和史书开始记载之前的情况进行比较,比如当前第3年,比较5年前的),注意这个记录的肯定是实际情况。
注意只有遇到R操作才会使年份的记数+1。
输出
对于每个T的记录输出一行,如果此次计划旅行令国王满意,则输出Y,否则输出N。
样例输入 复制
3 7
R 0 1
T 0 1 1
K 1
R 0 1
T 0 1 1
R 0 1
T 0 2 1
样例输出 复制
Y
N
Y
提示
30%的数据:n <= 1000, m <= 3000。
另30%的数据:没有发生国王的交替。
100%的数据:n, m <= 3 * 10 ^ 5, 0 <= v, x, y, st, en < n, 0 <= t < m, 数据有梯度。