#1235. 坑

题目描述

在一个左右无限延伸的数轴上,有 nn 只跳蚤和 mm 个坑。第 ii 只跳蚤的初始坐标为 xix_i,第 jj 个坑的坐标为 yjy_j。所有的 n+mn+m 个坐标两两互不相同。

每回合,你可以选择让所有(仍存活的)跳蚤同时向左移动 11 个单位长度,或者同时向右移动 11 个单位长度。

如果在移动后,某只跳蚤的当前坐标与某个坑的坐标完全重合,这只跳蚤就会掉进坑中并死亡(即从数轴上移除)。

请计算出消灭所有跳蚤所需的最少回合数。

输入格式

第一行包含两个正整数 nnmm —— 分别表示跳蚤的数量和坑的数量。

第二行包含 nn 个整数 x1,x2,,xnx_1, x_2, \dots, x_n —— 表示每只跳蚤初始时的坐标,相邻整数之间用一个空格隔开。

第三行包含 mm 个整数 y1,y2,,ymy_1, y_2, \dots, y_m —— 表示每个坑的坐标,相邻整数之间用一个空格隔开。

输出格式

输出一行,一个整数,表示消灭所有跳蚤所需的最少回合数。

样例输入 1

3 2
3 -1 2
0 10

样例输出 1

5

说明

样例解释

初始时跳蚤的坐标为 3,1,23, -1, 2,坑的坐标为 0,100, 10

  • 第一回合,让所有跳蚤向右跳一步,坐标变为 4,0,34, 0, 3。此时初始在 1-1 的跳蚤到达 00,掉入第一个坑中死亡。剩下的跳蚤位于 4433
  • 接下来的四个回合,让所有存活的跳蚤向左跳。经过 44 步后,这两只跳蚤都到达了坐标 00,掉入第一个坑中死亡。游戏结束。

总共经过 1+4=51 + 4 = 5 个回合。

其它样例说明

  • 样例 2:见选手附加文件下的 hole2.inhole2.ans

数据范围与提示

  • 对于 20%20\% 的数据,保证 1n201 \le n \le 201m3001 \le m \le 300
  • 对于另外 20%20\% 的数据,保证 1n,m3001 \le n, m \le 300
  • 对于另外 20%20\% 的数据,保证 1xi,yi20001 \le x_i, y_i \le 2000
  • 对于另外 10%10\% 的数据,保证 1n,m20001 \le n, m \le 2000
  • 对于另外 10%10\% 的数据,保证 m=2m=2
  • 对于 100%100\% 的数据,保证 1n,m2×1051 \le n, m \le 2 \times 10^5109xi,yi109-10^9 \le x_i, y_i \le 10^9
  • 保证输入数据中 n+mn+m 个坐标两两互不相等。
  • 保证所有的输入数值均为整数。

点击下载大样例