AT_aising2019_d Nearest Card Game

Description

[problemUrl]: https://atcoder.jp/contests/aising2019/tasks/aising2019_d $ N $ 枚のカードがあり、このうち $ i $ 枚目のカードには整数 $ A_i $ が書かれています。 どの $ 2 $ 枚のカードに書かれた整数も相異なります。 高橋くんと青木くんはこれらのカードを用いて以下のようなゲームをすることにしました。 - 青木くんは整数 $ x $ を一つ決める。 - 高橋くんからはじめて、交互にカードを一枚ずつ取っていく。その際、取るカードは以下のように選ぶ。 - 高橋くんは残っているカードのうち書かれている整数が最も大きいカードを取る。 - 青木くんは残っているカードのうち書かれている整数が $ x $ に最も近いカードを取る。ただしそのようなカードが複数ある場合は、それらのうち書かれている整数が最も小さいカードを取る。 - 残っているカードがなくなったときゲームは終了する。 $ Q $ 個の $ x $ の値の候補 $ X_1,\ X_2,\ ...,\ X_Q $ が与えられます。 各 $ i $ ($ 1\ \leq\ i\ \leq\ Q $) に対して、青木くんが $ x\ =\ X_i $ としたときに高橋くんが取ることになるカードに書かれた整数の和を求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ Q $ $ A_1 $ $ A_2 $ $ ... $ $ A_N $ $ X_1 $ $ X_2 $ $ : $ $ X_Q $

Output Format

$ Q $ 行出力せよ。このうち $ i $ 行目 ($ 1\ \leq\ i\ \leq\ Q $) には $ x\ =\ X_i $ のときの答えを出力せよ。

Explanation/Hint

### 制約 - $ 2\ \leq\ N\ \leq\ 100,000 $ - $ 1\ \leq\ Q\ \leq\ 100,000 $ - $ 1\ \leq\ A_1\