AT_arc214_e [ARC214E] Swap K times
题目描述
给定长度为 $N$ 的整数序列 $A = (A_1, \dots, A_N)$ 和 $B = (B_1, \dots, B_N)$,以及一个正整数 $K$。
每次支付 $1$ 的代价,你可以**恰好进行 $K$ 次相邻元素交换**。一次相邻元素交换指的是:
- 选择一个整数 $i$,$1 \leq i \leq N-1$,交换 $A_i$ 和 $A_{i+1}$。
请你判断是否有可能通过若干次该操作使得 $A$ 变为 $B$。如果可以,请你计算使 $A$ 与 $B$ 相同所需的最小代价。
共给出 $T$ 组测试数据,请你输出每组的答案。
输入格式
输入格式如下:
> $T$
> $\text{case}_1$
> $\text{case}_2$
> $\vdots$
> $\text{case}_T$
每组测试数据格式如下:
> $N$ $K$ $A_1$ $A_2$ $\ldots$ $A_N$ $B_1$ $B_2$ $\ldots$ $B_N$
输出格式
输出 $T$ 行。
第 $i$ 行输出第 $i$ 组测试数据的答案:如果可以使 $A$ 变为 $B$,请输出所需的最小代价;否则输出 $-1$。
说明/提示
### 样例说明 1
对于第一组数据,可以通过如下操作以代价 $2$ 使 $A$ 变为 $B$:
1. 支付 $1$ 的代价,依次选择 $i$ 为 $3, 1, 4, 1$ 进行相邻交换,此时 $A = (3,1,1,5,4)$。
2. 再支付 $1$ 的代价,依次选择 $i$ 为 $3,1,2,1$,此后 $A = (5,1,3,1,4)$。
对于第二组数据,无论进行多少次操作,都无法使 $A$ 变为 $B$。
### 数据范围
- $1 \leq T \leq 10^5$
- $2 \leq N \leq 3 \times 10^5$
- $1 \leq K \leq 10^9$
- $1 \leq A_i, B_i \leq N$
- $\{A_1, \dots, A_N\}$ 与 $\{B_1, \dots, B_N\}$ 作为多重集合完全一致。
- 所有测试数据中 $N$ 的总和不超过 $3 \times 10^5$。
- 所有输入均为整数。
由 ChatGPT 5 翻译