#CSPJ1010. 小 Z 的手套(gloves)

小 Z 的手套(gloves)

题目描述

小 Z 从某市场批发了一些手套,具体地,共有 nn 只左手手套和 mm 只右手手套。

小 Z 准备手动将这些左手手套和右手手套组合起来拼成一对手套,并将其捐给有需要的人。其中 nn 只左手手套编号为 1,2,,n1,2,\cdots,n,第 ii 只左手手套的尺码为 lil_imm 只右手手套编号为 1,2,,m1,2,\cdots,m,第 ii 只右手手套的尺码为 rir_i

如果将第 i(1in)i(1\le i \le n) 只左手手套和第 j(1jm)j(1\le j \le m) 只右手手套组合成一副手套,那么这副手套的丑陋程度为 lirj|l_i-r_j|,即左手和右手手套尺码差值的绝对值。

小 Z 希望尽最大的可能帮助有需要的人,即他想要配对尽可能多的手套,并且使得配对成的手套的最大丑陋程度最小。请你求出这个最小值。

输入格式

gloves.in 文件读入数据。

第一行包含两个正整数 nnmm ,分别表示左手手套和右手手套的数量。

第二行包含 nn 个整数 l1,l2,,lnl_1,l_2,\cdots,l_n 表示左手手套的尺码。

第二行包含 mm 个整数 r1,r2,,rmr_1,r_2,\cdots,r_m 表示右手手套的尺码。

输出格式

输出到 gloves.out 文件。

输出一行一个整数表示答案。

输入输出样例

2 3
2 3
1 2 3
0
4 3
2 39 41 45
39 42 46
1
5 5
7 6 1 2 10
9 11 6 3 12
4

样例 4

点击链接 ex_gloves4.inex_gloves4.out 下载大样例 4 的输入数据和输出数据。

说明/提示

样例 1 解释

最多可以配对成功 22 副手套,分别让 (l1,r2),(l2,r3)(l_1,r_2),(l_2,r_3) 进行配对,容易知道此搭配下左手和右手手套尺码差距均为 00

样例 2 解释

最多可以配对成功 33 副手套,搭配关系为 (l2,r1),(l3,r2),(l4,r3)(l_2,r_1),(l_3,r_2),(l_4, r_3),容易知道此搭配下,手套尺码差距为 0,1,10,1,1,最大手套尺码差距为 11

样例 3 解释

最多可以配对成功 55 副手套,最终的搭配关系为 $(l_3=1,r_4=3),(l_4=2,r_3=6),(l_2=6,r_1=9),(l_1=7,r_2=11),(l_5=10,r_5=12)$,手套尺码差距分别为 2,4,3,4,22,4,3,4,2,最大手套尺码差值为 44

数据范围

对于 20%20\% 的数据,n=mn=m

对于另外 50%50\% 的数据,n,m500n,m\le 500

对于 100%100\% 的数据,1n,m1000001 \le n,m \le 1000001li,ri1091 \le l_i, r_i \le 10^9