99034 - 猴子上树

在猴村有一条笔直的山路,这条山路很窄,宽度忽略不计。有 n 只猴子正站在山路上静静地观望今天来参加比赛的各位同学。用一个正整数 X_{i}表示第 i 只猴子所站位置,任意两只猴子的所站位置互不相同。在这条山路的 m 个位置上种着一些高大的树木,正整数Y_{j}表示第 j 棵树木所在的位置,任意两棵树的位置互不相同。 正当猴子们聚精会神的欣赏各位高超的编程技能时,一只老虎大摇大摆的走了过来。猴子们吓得直冒冷汗,第一反应就是找一棵大树爬上去,这样就能避免被老虎咬死或者吃掉(不考虑老虎上树问题)。 在位置 a 的猴子跑到在位置 b 的大树上,需要消耗的能量为 |a-b|(即 a-b 的绝对值)。 为了尽可能有效利用这些大树避难,每棵大树上至少要有一只猴子。 请编程计算 n 只猴子全部上树最少需要消耗多少能量?

输入

共 4 行。 第 1 行一个整数 n,表示猴子的数量。 第 2 行 n 个整数,第 i 个整数X_{i}表示第 i 只猴子所在的位置。 第 3 行一个整数 m,表示大树的数量。 第 4 行 m 个整数,第 j 个整数 Y_{j}表示第 j 棵大树所在的位置。

输出

一个整数,表示 n 只猴子全部上树最少需要消耗的能量。

样例

输入

3 
1 4 5 
2 
3 8 

输出

6 

输入

3 
3 1 10 
2 
8 3 

输出

4 

提示

30%的数据 1≤n≤500,1≤X_{j} ,Y_{j}10^3 。 100%的数据 1≤n≤5000,1≤m≤n,1≤X_{j} ,Y_{j}≤100%的数据 1≤n≤5000,1≤m≤n,1≤X_{j} ,Y_{j}10^9

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题