atcoder#ARC121D. [ARC121D] 1 or 2

[ARC121D] 1 or 2

配点 : 700700

問題文

すぬけ君は黒板と NN 個の飴を持っています。 ii 番目の飴の おいしさaia_i です。

すぬけ君は手持ちの飴がなくなるまで、以下の操作を繰り返します。

  • 手持ちの飴から 11 つ、あるいは 22 つ選んで食べ、その後選んだ飴のおいしさの総和を黒板に書き込む(食べた飴はなくなります)。

すぬけ君は黒板に書かれた値の最大値を XX、最小値を YY として XYX-Y が最小になるようにしたいです。 XYX-Y としてありうる値の最小値を求めてください。

制約

  • 与えられる入力は全て整数
  • 1N50001 \leq N \leq 5000
  • 109ai109-10^{9} \leq a_i \leq 10^9

入力

入力は以下の形式で標準入力から与えられる。

NN

a1a_{1} a2a_{2} \cdots aNa_N

出力

黒板に書かれた値の最大値を XX、最小値を YY とする。 XYX-Y としてありうる値の最小値を出力せよ。

3
1 2 4
1
  • 11 回目の操作で美味しさ 1,21,2 の飴を食べ、22 回目の操作で美味しさ 44 の飴を食べるのが最適な操作手順の 11 つです。
2
-100 -50
0
  • 11 回目の操作で美味しさ 100,50-100,-50 の飴を食べるのが最適です。
20
-18 31 -16 12 -44 -5 24 17 -37 -31 46 -24 -2 11 32 16 0 -39 35 38
13