loj#P3519. 「CCO 2018 Day2」Flop Sorting

「CCO 2018 Day2」Flop Sorting

题目描述

译自 Canadian Computing Olympiad 2018 Day 2 C Flop Sorting

Robert 出了一道线段树题,题目是:

给定一个 11NN 的排列 aia_i,我们规定一次「翻牌」操作表示交换一个区间的最小值与最大值的位置。现在给定你 QQ 次翻牌操作,每次对 [l,r][l,r] 执行翻牌操作,求进行 QQ 次翻牌操作后的最终序列。

搞好了题目描述,接下来要搞数据了。

现在给定了 NN,初始序列 aia_i 和最终序列,求中间要进行的翻牌操作。

输入格式

第一行一个整数代表序列长度 NN
第二行 NN 个整数代表初始序列 aia_i
第三行 NN 个整数代表最终序列。

输出格式

首先第一行一个整数 QQ 代表要进行的翻牌操作的次数。
接下来 QQ 行每行两个整数 l,rl,r 代表对 [l,r][l,r] 进行翻牌操作。

6
1 3 5 6 4 2
1 2 3 4 5 6
4
2 3
3 6
2 5
4 5

数据范围与提示

对于 100%100\% 的数据,1aiN40961 \le a_i \le N \le 40961Q3×1051 \le Q \le 3 \times 10^51lrN1 \le l\le r \le N
对于其中 20%20\% 的分数,N100N \le 100
对于另外 40%40\% 的分数,N2048N \le 2048