时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
Sakuya所居住的城市非常特殊,可以看成一个周长为

的圆。其中有

个工厂和

个仓库。每一个工厂的产品都要送往一个仓库,每个仓库也只能存储一个工厂的产品。
其中还有一家物流公司,以物流公司为原点,

个工厂的位置分别在物流公司逆时针方向距离为

的位置,

个仓库的位置分别在物流公司逆时针方向距离为

的位置。为了更好地安排城市物流,需要设计一种工厂和仓库的运输关系,使得所有工厂到其对应仓库的最大运输距离尽可能小。
输入描述:
第一行输入两个整数
)
,分别表示工厂和仓库总数和城市周长。
第二行输入

个整数
)
,表示各个工厂的位置。
第三行输入

个整数
)
,表示各个仓库的位置。
输入不保证

和

两两不同。
输出描述:
输出一行一个整数,表示所有工厂到其对应仓库的最大运输距离的最小值。
示例1
说明
可以让第1个工厂的货物运往第2个仓库,第2个工厂的货物运往第1个仓库,运输距离都是1。
示例2
输入
复制
10 100
3 14 15 92 65 35 89 79 32 38
2 71 82 81 82 84 5 90 45 23
说明
一种最优的运输关系是:
1到10的工厂分别与(6,8,1,4,5,10,3,2,7,9)的仓库建立运输关系。