지훈 は最近、1 人で遊ぶカードゲームを楽しんでいる。
ゲームに使う各カードには正整数が 1 つ書かれており、同じ数のカードが複数あってもよい。
まず偶数枚のカードをランダムに混ぜ、同じ枚数の 2 つの山に分け、一方を左、もう一方を右に置く。
また、空の容器を用意する。
ここから、両方の山の一番上のカードを比較しながらゲームを行う。
ルールは次の通りである。以下、左の山の一番上を左カード、右の山の一番上を右カードと呼ぶ。
(1)いつでも左カードだけを容器に捨てるか、左カードと右カードの両方を捨てることができる。このとき得点はない。
(2)右カードの数が左カードの数より小さいときは、右カードだけを捨てることもできる。
右カードだけを捨てると、そのカードに書かれた数だけ得点を得る。
(3)ルール(1)と(2)に従って進め、どちらかの山のカードがなくなるとゲームは終了し、
それまでに得た得点の合計が最終得点となる。
次の例では、各山 3 枚のカードでゲームを始める。
この場合、最初は右カードの 2 が左カードの 3 より小さいので、
ルール(1)により左カードだけ、または両方のカードを捨てるか、
ルール(2)により右カードだけを捨てることができる。
右カードだけを捨てると、2 点を得て右カードの 2 を捨てる。
すると右の山の一番上は 4 となり、左カードの 3 より大きいので、
ルール(1)により左カードだけ、または両方を捨てることができる。
両方を捨てると、左カードは 2、右カードは 1 となる。
この場合もルール(1)と(2)により 3 通りから選択でき、
左カードだけを捨てると、左カードは 5、右カードは 1 となる。
ここでもルール(1)と(2)により 3 通りから選択でき、
右カードだけを捨てると、1 点を得て右カードの 1 を捨てる。
これで右の山にカードがなくなるため、ルール(3)によりゲームが終了し、最終得点は $2+1=3$ となる。
2 つの山のカードが与えられたとき、得られる最終得点の最大値を出力するプログラムを作成せよ。
上の例での最終得点の最大値は 7 である。
入力
標準入力の最初の行に、各山のカードの枚数を表す正整数 $N$($1\le N\le2{,}000$)が与えられる。
次の行に、左の山のカードの整数 $A$($1\le A\le2{,}000$)がカードの順に $N$ 個与えられる。
次の行に、右の山のカードの整数 $B$($1\le B\le2{,}000$)がカードの順に $N$ 個与えられる。
各山には、同じ数のカードが 2 枚以上含まれていてもよい。
出力
標準出力に、得られる最終得点の最大値を出力せよ。
入出力例
入力 1
3 3 2 5 2 4 1
出力 1
7
入力 2
4 1 2 3 4 4 1 2 3
出力 2
6
小課題
31 点:$N\le10$。
33 点:$N\le25$。
36 点:追加の制約はない。