计程车派单

题目描述

Y 同学是一家出租车公司的老板,他手下拥有 MM 台出租车。这些出租车停靠在一条笔直的公路(可以视为 xx 轴)上,其坐标分别为 T1,T2,,TMT_1, T_2, \ldots, T_M

同时,Y 同学接到了 MM 名乘客的打车请求,这 MM 名乘客也位于同一条公路上,坐标分别为 P1,P2,,PMP_1, P_2, \ldots, P_M

题目保证上述的 2M2M 个坐标均互不相同。

Y 同学的任务是为每一位乘客恰好指派一台出租车,同时保证每台出租车只被指派给一位乘客。他的目标是最小化“总接驾距离”,即所有出租车到其被指派的乘客位置的距离之和。

形式化地讲,假设存在一个 11MM 的排列 j1,j2,,jMj_1, j_2, \ldots, j_M,表示第 ii 台出租车被指派给第 jij_i 位乘客。Y 同学希望最小化以下函数的值:

i=1MTiPji\sum_{i=1}^{M} |T_i - P_{j_i}|

请你编写程序,帮助 Y 同学求出能够达到的最小总接驾距离。

输入格式

第一行包含一个正整数 MM,表示出租车和乘客的数量。 第二行包含 MM 个正整数 T1,T2,,TMT_1, T_2, \ldots, T_M,表示每一台出租车的坐标。 第三行包含 MM 个正整数 P1,P2,,PMP_1, P_2, \ldots, P_M,表示每一位乘客的坐标。

输出格式

输出一行一个整数,表示给定输入下的最小总接驾距离。

样例

样例输入 #1

5
3 2 1 5 4
8 6 10 9 7

样例输出 #1

25

样例输入 #2

5
10 70 30 90 50
71 31 51 91 11

样例输出 #2

5

数据范围与约定

对于 100%100\% 的数据,保证:

  • 1M1061 \le M \le 10^6
  • 1Ti,Pi2×1061 \le T_i, P_i \le 2 \times 10^6
  • 输入的 2M2M 个坐标均互不相同。
子任务编号 分值 MM \le 特殊性质
1 40 10610^6 max{Ti}<min{Pi}\max \{T_i\} < \min \{P_i\}
2 60

相关

在下列比赛中:

「果壳杯」 ROUND 41 (Div. 4)