AT_abc321_b [ABC321B] Cutoff
Description
[problemUrl]: https://atcoder.jp/contests/abc321/tasks/abc321_b
以下の手順で行われる試験があります。
- 試験は $ 1 $ ラウンド目から $ N $ ラウンド目までの $ N $ ラウンドからなる。
- 各ラウンドに対し、 $ 0 $ 以上 $ 100 $ 以下の整数でスコアが与えられる。
- $ N $ ラウンドのスコアのうち、最高スコアと最低スコアを除いた $ N-2 $ ラウンドのスコアの合計が最終結果となる。
- 厳密には、各ラウンドのスコアを昇順に並べた列を $ S=(S_1,S_2,\dots,S_N) $ としたとき、最終結果は $ S_2+S_3+\dots+S_{N-1} $ となる。
現在、試験のうち $ N-1 $ ラウンドが終了し、 $ i $ ラウンド目のスコアは $ A_i $ でした。
最終結果を $ X $ 以上とするために $ N $ ラウンド目に取るべきスコアの最小値を出力してください。
但し、 $ N $ ラウンド目にどのようなスコアを取っても最終結果が $ X $ 以上にならない場合、代わりに `-1` と出力してください。
なお、 $ N $ ラウンド目に取りうるスコアは $ 0 $ 以上 $ 100 $ 以下の整数であることに注意してください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ X $ $ A_1 $ $ A_2 $ $ \dots $ $ A_{N-1} $
Output Format
答えを出力せよ。
Explanation/Hint
### 制約
- 入力は全て整数
- $ 3\ \le\ N\ \le\ 100 $
- $ 0\ \le\ X\ \le\ 100\ \times\ (N-2) $
- $ 0\ \le\ A_i\ \le\ 100 $
### Sample Explanation 1
$ 4 $ ラウンド目までのスコアは $ 40,60,80,50 $ でした。 $ 5 $ ラウンド目にスコア $ 70 $ を取ると、スコアを昇順に並べた列は $ S=(40,50,60,70,80) $ となり、最終結果は $ 50+60+70=180 $ となります。 なお、最終結果を $ 180 $ 以上にするために取るべきスコアの最小値が $ 70 $ であることが示せます。
### Sample Explanation 2
$ 2 $ ラウンド目までのスコアは $ 100,100 $ でした。 $ 3 $ ラウンド目にスコア $ 0 $ を取ると、スコアを昇順に並べた列は $ S=(0,100,100) $ となり、最終結果は $ 100 $ となります。 最大スコアである $ 100 $ が複数ありますが、そのうち $ 1 $ つしか除かれないことに注意してください。(最小スコアについても同様です) なお、最終結果を $ 100 $ 以上にするために取るべきスコアの最小値が $ 0 $ であることが示せます。
### Sample Explanation 3
$ 4 $ ラウンド目までのスコアは $ 0,0,99,99 $ でした。 $ 5 $ ラウンド目にどのようなスコアを取っても、最終結果を $ 200 $ 以上にすることができないことが示せます。