#ATarc120c. [ARC120C] Swaps 2

[ARC120C] Swaps 2

题目描述

给定两个长度为 NN 的数列 A=(A1,A2,A3,,AN)A = (A_1, A_2, A_3, \dots, A_N)B=(B1,B2,B3,,BN)B = (B_1, B_2, B_3, \dots, B_N)
请判断是否可以通过重复以下操作(可以一次也不做)将 AA 变为 BB。如果可以,请求出将 AA 变为 BB 所需的最小操作次数。

  • 选择满足 1i<N1 \le i < N 的整数 ii,依次进行以下操作:
    • 交换 AiA_iAi+1A_{i+1} 的值;
    • AiA_i11
    • Ai+1A_{i+1}11

输入格式

输入通过标准输入给出,格式如下:

NN A1A_1 A2A_2 A3A_3 \dots ANA_N B1B_1 B2B_2 B3B_3 \dots BNB_N

输出格式

如果无法将 AA 变为 BB,输出 -1
如果可以,输出所需的最小操作次数。

样例 1

输入

3
3 1 4
6 2 0

输出

2

样例 2

输入

3
1 1 1
1 1 2

输出

-1

样例 3

输入

5
5 4 1 3 2
5 4 1 3 2

输出

0

样例 4

输入

6
8 5 4 7 4 5
10 5 6 7 4 1

输出

7

说明/提示

限制条件

  • 2N2×1052 \le N \le 2 \times 10^5
  • 0Ai1090 \le A_i \le 10^9
  • 0Bi1090 \le B_i \le 10^9
  • 输入中的所有值均为整数。

样例解释 1

如下操作可以在 22 次内将 AA 变为 BB

  • 首先,选择 i=2i=2 进行操作。此时 A=(3,5,0)A = (3, 5, 0)
  • 然后,选择 i=1i=1 进行操作。此时 A=(6,2,0)A = (6, 2, 0)。 无法在 11 次或更少的操作内达成目标。

样例解释 2

在这种情况下,无法将 AA 变为 BB

样例解释 3

有可能在不进行任何操作的情况下,AA 已经与 BB 相同。

由 ChatGPT 4.1 翻译