AT_pakencamp_2018_day2_b チーム戦 (Teamwork)

Description

[problemUrl]: https://atcoder.jp/contests/pakencamp-2018-day2/tasks/pakencamp_2018_day2_b パ研という部活には、$ N $ 人の部員がいます。それぞれの部員には、年齢順に $ 1 $, $ 2 $, $ 3 $, ..., $ N $ と番号が付けられています。 部員 $ i $ の競技プログラミングの実力は $ A_i $ です。 競技プログラミングではチーム戦が多くあります。パ研では、「チームの戦闘力」を、チームで最も実力が低い人の実力の値、と定義しました。 例えば、実力が $ 5 $, $ 4 $, $ 10 $ の人がいる $ 3 $ 人チームの戦闘力は、$ 4 $ となります。 ある日突然、2020 年に開催される東京オリンピックの種目に、「競技プログラミング」が追加されました。この大会には、ちょうど $ D $ 人で構成されるチームで出場しなければなりません。 パ研の部員全員が、代表選抜に応募したいです。その為、パ研はチーム分けを以下のような方法で行うことにしました。 - 出来るだけ多くの人が、代表選抜に応募できることにする。 - その中で、**チームの戦闘力の合計** が最大になるようにチーム編成をする。 - ただし、同じ人が複数のチームに入ってはならない。 さて、チームの戦闘力の合計はいくつになるでしょうか?

Input Format

入力は以下の形式で標準入力から与えられます。 > $ N $ $ D $ $ A_1 $ $ A_2 $ $ A_3 $ ... $ A_N $

Output Format

問題文中の方法に従ってチーム編成をした時、チームの戦闘力の合計はいくつか、整数で一行に出力してください。

Explanation/Hint

### 制約 - $ N $ は $ 1 $ 以上 $ 1\ 000 $ 以下の整数 - $ D $ は $ 1 $ 以上 $ 10 $ 以下の整数 - $ A_i $ は $ 1 $ 以上 $ 4\ 208 $ 以下の整数 - 全く同じ実力の部員はいない ### 小課題 小課題 $ 1 $ \[$ 25 $ 点\] - $ N\ =\ D $ を満たす. 小課題 $ 3 $ \[$ 75 $ 点\] - 追加の制約はない. ### Sample Explanation 1 部員の実力は、部員 $ 1 $ から順に $ {20,\ 18,\ 12,\ 24} $ です。 チームを以下のように決めると、戦闘力の合計が $ 20\ +\ 12\ =\ 32 $ となります。 - 部員 $ 1 $ と $ 4 $ で構成されるチーム: 戦闘力は $ min(20,\ 24)\ =\ 20 $ - 部員 $ 2 $ と $ 3 $ で構成されるチーム: 戦闘力は $ min(18,\ 12)\ =\ 12 $ ### Sample Explanation 2 $ N\ =\ D $ なので、$ 1 $ チームしか作れません。また、$ 1 $ チーム編成するとき、過不足なくどの部員も代表選抜に参加できます。 そのため、戦闘力の合計は $ min(8,\ 6,\ 9,\ 1,\ 20)\ =\ 1 $ となります。 ### Sample Explanation 3 $ N\