【题目描述】互换(swap)
给定一个由数字1~n组成的序列,输出字典序最小且次数最少的两两交换方式,使得交换后的序列可以通过最少m次交换得到 [1,2,...,n]的序列。
第一行为一个整数n(1≤n≤3000),表示序列的长度。 第二行为排列的数p1, p2,...,pn(1≤pi≤n)。 第三行为一个整数m (0≤m<n)。
第一行输出一个整数K,表示最少交换操作数。 第二行输出2K个数,用于描述交换过程。如果有多个最小长度的序列交换,则打印按字典顺序排列的最小长度。
5 1 2 3 4 5 2
2 1 2 1 3
5 2 1 4 5 3 2
1 1 2