有两个整数数组 $a$ 和 $b$,长度分别为 $n$ 和 $m$。
每个数组中都有一个被选中的位置。记 $a$ 中被选中的位置为 $c$,$b$ 中被选中的位置为 $d$。游戏的状态是一个二元组 $(c, d)$。被选中的位置永远不会越界,即 $1 \le c \le n$ 且 $1 \le d \le m$。在游戏开始时,$c$ 和 $d$ 都等于 $1$。
两位玩家轮流进行游戏。在每个玩家的回合中,他必须执行以下操作之一:
- 移动(Move):改变其中一个数组中被选中的位置。你不能将一个被选中的位置改变为它本身。不允许进行会导致某个状态第 $10^{228}$ 次出现的移动。初始状态被视为在游戏开始时已经出现过一次。
- 去你们的,我回家了(Screw you guys, I'm going home):结束游戏。
请注意,共有 $n \cdot m$ 个状态,且每个状态出现的次数不超过 $10^{228} - 1$ 次。因此,游戏是有限的。
游戏的得分等于被选中位置上的元素之和,即 $a_c + b_d$。先手玩家通过相应的策略来最小化得分,而后手玩家则最大化得分。
假设双方都采取最优策略,游戏的最终得分是多少?
输入格式
第一行包含两个整数 $n$ 和 $m$ ($1 \le n, m \le 10^5$),分别表示数组 $a$ 和 $b$ 的长度。
第二行包含 $n$ 个整数 $a_i$ ($1 \le a_i \le 10^8$),表示 $a$ 的元素。
第三行包含 $m$ 个整数 $b_i$ ($1 \le b_i \le 10^8$),表示 $b$ 的元素。
输出格式
输出一个整数,表示游戏的得分。
样例
输入 1
2 2 1 3 1 3
输出 1
2
输入 2
2 1 3 2 2
输出 2
4
输入 3
3 1 3 3 2 2
输出 3
5
输入 4
4 5 10 1 2 3 10 1 2 3 4
输出 4
11
输入 5
6 7 4 5 6 1 2 3 5 2 1 3 4 6 7
输出 5
7
输入 6
4 3 64 16 4 1 32 8 2
输出 6
33