問題一覧 > 通常問題

No.2918 Divide Applicants Fairly

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 16
作問者 : 高橋ゆに高橋ゆに / テスター : みうねみうね 👑 binapbinap
4 ProblemId : 11358 / 自分の提出
問題文最終更新日: 2024-10-07 16:55:29

問題文

岩井星人さんが、自身の主催する競技プログラミングの大会への参加希望者を募集したところ、$N$人からの応募がありました。$i$番目の応募者のレートは$R_i$です。
大会はチーム戦であり、岩井星人さんは今から次のようにチーム分けを行います。まず、任意に選んだ何人かの応募者に難癖をつけ、大会に参加させないようにします。その後、難癖をつけなかった応募者を赤チームと青チームのどちらか一方に所属させます。このとき、それぞれのチームに$1$人以上が所属し、赤チームに所属する人数と青チームに所属する人数が等しくなければなりません。
各々のチーム分けにおける、あるチームの実力を、そのチームに所属する人のレートの総和で定義します。岩井星人さんは、大会を盛り上げるため、両チームの実力をできるだけ近づけたいと思っています。岩井星人さんが最適にチーム分けを行った場合、赤チームの実力と青チームの実力の差の絶対値は最小でいくつになるか求めてください。

入力

$N$
$R_1\ R_2\ \dots\ R_N$
  • $2 \leq N \leq 40$
  • $0 \leq R_i \leq 8 \times 10 ^ 5$
  • 入力は全て整数

出力

両チームの実力の差の絶対値が最小でいくつになるかを整数で出力してください。
最後に改行してください。

サンプル

サンプル1
入力
4
1050 1100 1300 1370
出力
20

1番目と4番目の応募者を赤チームに所属させ、2番目と3番目の応募者を青チームに所属させれば、赤チームの実力は$1050 + 1370 = 2420$、青チームの実力は$1100 + 1300 = 2400$となり、両チームの実力の差の絶対値は$|2420 - 2400| = 20$となります。両チームの実力の差の絶対値をこれ以上小さくするチーム分けは存在しません。

サンプル2
入力
6
0 1 2 4 8 16
出力
1

1番目と2番目の応募者以外の応募者に難癖をつけて参加させず、1番目の応募者を赤チーム、2番目の応募者を青チームに所属させれば、両チームの実力の差の絶対値は$|0 - 1| = 1$となります。両チームの実力の差の絶対値をこれ以上小さくするチーム分けは存在しません。

サンプル3
入力
5
1694 491 835 1875 1343
出力
7

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。