A. 分组2

内存限制:512 MiB 时间限制:3000 ms 标准输入输出
题目类型:传统 评测方式:文本比较

题目描述

前情提要

在过去的半年中,kuro使用这种分组方法打出了很好的分数,不幸的是,面对一些抽象的谱面(与题目无关,请不要在赛时访问),kuro需要新的分组方法!

具体的说,一共有个音符,一共有四种操作。

kuro认为从的所有音符应该属于同一组。

kuro认为应该属于同一组。

kuro想知道是否属于同一组

kuro反悔了,认为的所有点都不应该和任何其他点属于同一组(即各自为一组)

两个音符当且仅当符合以下三种情况时属于同一组(具体例子请阅读样例和样例解释)

1.kuro的某一次认定中被认为属于同一组音符

2.因为第一种或此前因该种情况被认为属于同一组音符,也因为第一种或此前因该种情况被认为属于同一组音符

3.第四种操作并不会影响以某个为中继点的点属于同一组,只是将[l,r]范围内的所有点都各自独立

输入格式

每个测试点的第一行为一个整数,表示该测试点有组测试数据

每组测试数据的第一行包含两个整数 , ),分别表示音符的总数和操作数量。

接下来的 行,每行有三个整数,第一个整数表示操作种类,接下来的 个整数,l,r与题目描述中含义相同

保证每个测试点的所有的总和不超过

输出格式

对于第三个操作,若属于同一组,你需要输出一行,只包含一个整数1,否则,你需要输出一行,只包含一个整数0

对于其他操作,你不需要输出。

样例

输入 #1

1

5 5

1 1 3

2 3 5

2 1 3

4 2 4

3 1 5

输出 #1

1

样例解释

第一次操作后,分组为[1,2,3],[4],[5]

第二次操作后,分组为[1,2,3,5],[4]

第三次操作后,分组不变

第四次操作后,分组为[1,5],[2],[3],[4]

第五次操作为询问,分组不变

输入 #2

2

1000000000 3

1 1 3

1 4 5

3 3 4

10000000 3

1 1 1

3 2 2

1 1000 10000000

输出 #2

0
1