问题描述
给定长度为 n 的序列 a=(a1,a2,…,an) 和 b=(b1,b2,…,bn),以及一个正整数 m。
你可以自由地重新排列 a 中的元素,求
i=1∑n((ai+bi)modm)
的最小可能值。
共有 T 组测试数据,需要分别求解。
输入格式
第一行一个正整数 T,表示数据组数。
接下来每组数据占 3 行:
- 第一行:两个正整数 n,m;
- 第二行:n 个非负整数 ai;
- 第三行:n 个非负整数 bi。
输出格式
输出共 T 行,每行一个非负整数,表示对应测试数据的最小可能值。
样例输入
3
3 6
3 1 4
2 0 1
1 1000000000
999999999
999999999
10 201
144 150 176 154 110 187 38 136 111 46
96 109 73 63 85 1 156 7 13 171
样例输出
5
999999998
619
说明
- 对于第一组数据,将 a 重排为 {4,3,1} 时,和式为 ((4+2)mod6)+((3+0)mod6)+((1+1)mod6)=0+3+2=5,为最小值。
- 数据保证所有输入均为整数。
评测数据规模
- 1≤T≤105
- 1≤n≤3×105,且所有测试数据的 n 之和不超过 3×105
- 1≤m≤109
- 0≤ai,bi<m