#P14619. [2019 KAIST RUN Fall] Maximizer

[2019 KAIST RUN Fall] Maximizer

题目描述

Maximizer 有两个排列 A=[a1,a2,⋯ ,aN]A=[a_1,a_2,\cdots,a_N] 和 B=[b1,b2,⋯ ,bN]B=[b_1,b_2,\cdots,b_N]。AA 和 BB 的长度均为 NN,且都由 11 到 NN 的 互不相同的整数 组成。

Maximizer 想要最大化每个元素差值的和,即 ∑i=1N∣ai−bi∣\sum_{i=1}^{N} |a_i - b_i|。但他只能交换 AA 中相邻的两个元素。具体来说,他只能交换 aia_i 和 ai+1a_{i+1},其中 ii 从 11 到 N−1N-1。他可以进行任意多次交换。

为了最大化差值之和,所需的最小交换次数是多少?

输入格式

第一行包含一个整数 NN(1≤N≤250,0001 \leq N \leq 250,000)。

第二行包含 NN 个整数 a1,a2,⋯ ,aNa_1,a_2,\cdots,a_N(1≤ai≤N1 \leq a_i \leq N)。

第三行包含 NN 个整数 b1,b2,⋯ ,bNb_1,b_2,\cdots,b_N(1≤bi≤N1 \leq b_i \leq N)。

[a1,a2,⋯ ,aN][a_1,a_2,\cdots,a_N] 和 [b1,b2,⋯ ,bN][b_1,b_2,\cdots,b_N] 都是排列。换句话说,它们都由 11 到 NN 的互不相同的整数组成。

输出格式

输出一个整数,表示为了最大化差值之和所需的最小交换次数。

3
1 2 3
1 2 3
2
4
3 4 1 2
3 2 4 1
3

提示

翻译由 DeepSeek V3 完成