atcoder#ABC149E. [ABC149E] Handshake
[ABC149E] Handshake
题目描述
高橋君は、あるパーティに特別ゲストとしてやってきました。 そこには一般ゲストが 人おり、一般ゲスト の パワー は です。
高橋君は 握手 を 回行うことで、パーティ全体の 幸福度 を上げることにしました(握手開始前の幸福度を とします)。 握手は、以下の手順によって行われます。
- 高橋君が左手で手を握る (一般) ゲスト と右手で手を握るゲスト を決める (両手で同じゲストの手を握っても良い)。
- 高橋君が実際にこれら二本の手を握ることで、幸福度が 上がる。
ただし、全く同じ握手を二回以上行ってはいけません。厳密には、次の条件を満たす必要があります。
- 回目の握手で、左手でゲスト と、右手でゲスト と手を握ったとする。このとき、 を満たすような が存在しない。
回の握手を行った後、最終的な幸福度は最大でいくらにできるでしょうか。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
回の握手を行った後の最終的な幸福度の最大値を出力せよ。
题目大意
题目描述
Takahashi 作为特殊嘉宾参加一个晚会 , 晚会上还有 N 个非特殊嘉宾 , 第 i 个特殊嘉宾有 A_i 的欢乐值.晚会目前的欢乐值是 0 .
Takahashi 想跟非特殊嘉宾握 M 次手来提高晚会的欢乐值.每一次握手可以被描述为以下的操作:
- Takahashi 选择两个非特殊嘉宾 x 和 y
- Takahashi 用左手和 x 握手 , 用右手和 y 握手 , 晚会的欢乐值增加 A_x + A_y .
然而 , Takahashi 不能以同一种握手方式握两次手.也就是说 , Takahashi 的 M 次握手必须满足以下条件:
- 假设在第 k 次握手中 , Takashi 握了非特殊嘉宾 x_k 的左手和 y_k 的右手 , 则没有一组 p , q ( 1 ≤ p < q ≤ M) 可以满足 ( x_p , y_p ) = ( x_q , y_q ) .
请问:在 M 次握手后 , 晚会的欢乐值最大是多少 ?
输入格式
第一行: N , M
第二行: A_1 , A_2 , ··· , A_N
输出格式
一行 , 最大的欢乐值
5 3
10 14 19 34 33
202
9 14
1 3 5 110 24 21 34 5 3
1837
9 73
67597 52981 5828 66249 75177 64141 40773 79105 16076
8128170
提示
制約
- 入力は全て整数である。
Sample Explanation 1
例えば、 - 回目の握手で左手でゲスト 、右手でゲスト と握手し、 - 回目の握手で左手でゲスト 、右手でゲスト と握手し、 - 回目の握手で左手でゲスト 、右手でゲスト と握手する ことで、幸福度を とすることができます。 幸福度を 以上にはできないので、答えは となります。