题目描述
给定整数 n 和两个 1,…,n 的排列 a,b。
m 个操作,操作有两种:
- 1 la ra lb rb,设 a 的 [la,ra] 区间内的元素集合为 Sa,设 b 的 [lb,rb] 区间内的元素集合为 Sb,求 ∣Sa⋂Sb∣。
- 2 x y,交换 b 的第 x 位与第 y 位。
输入格式
第一行,两个整数 n,m。
以下两行,每行 n 个整数,分别表示 a,b (1≤ai,bi≤n)。
以下 m 行,每行一个操作。
输出格式
对于每个 1 操作,输出答案。
6 7
5 1 4 2 3 6
2 5 3 1 4 6
1 1 2 4 5
2 2 4
1 1 2 4 5
1 2 3 3 5
1 1 6 1 2
2 4 1
1 4 4 1 3
1
1
1
2
0
样例分析
考虑第一个例子的第一个查询。数组 a 在位置 [1,2] 的值是 [5,1] ,数组 b 在位置 [4,5] 的值是 [1,4]。只有值1同时出现在两个区间中。
在第一次交换(第二个查询)之后,排列 b 变成了 [2,1,3,5,4,6]。
在第二次交换(第六个查询)之后,排列b变成了 [5,1,3,2,4,6]。
数据范围与提示
对于 100% 的数据:1≤n,m≤2⋅105。