勇敢的骑士来到国王面前,请求国王准许他迎娶公主。国王知道骑士很勇敢,但也想知道他是否足够聪明。于是,国王让他解决以下任务。
给定一个 $1$ 到 $2n$ 的排列 $p_i$。你可以进行两种类型的操作:
- 交换 $p_1$ 和 $p_2$,$p_3$ 和 $p_4$,...,$p_{2n-1}$ 和 $p_{2n}$。
- 交换 $p_1$ 和 $p_{n+1}$,$p_2$ 和 $p_{n+2}$,...,$p_n$ 和 $p_{2n}$。
任务是求出将给定排列排序所需的最少操作次数。
骑士其实并没有那么聪明,但他很有魅力,所以公主请求你帮他完成国王的任务。
输入格式
第一行包含一个整数 $n$ ($1 \le n \le 1000$)。第二行包含 $2n$ 个整数 $p_i$ —— $1$ 到 $2n$ 的排列。
输出格式
输出一个整数 —— 将排列排序所需的最少操作次数。如果无法通过这些操作将排列排序,则输出 $-1$。
样例
样例输入 1
3 6 3 2 5 4 1
样例输出 1
3
样例输入 2
2 3 4 2 1
样例输出 2
-1
样例输入 3
4 1 2 3 4 5 6 7 8
样例输出 3
0
说明
在第一个样例中,可以通过三次操作将排列排序:
- 进行操作 1:3, 6, 5, 2, 1, 4。
- 进行操作 2:2, 1, 4, 3, 6, 5。
- 进行操作 1:1, 2, 3, 4, 5, 6。