AT_abc321_b [ABC321B] Cutoff
题目描述
有一个按照以下步骤进行的考试。
- 考试共分为 $N$ 轮,从第 $1$ 轮到第 $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$ 之间的整数。
输入格式
输入以如下格式从标准输入读入。
> $N$ $X$ $A_1$ $A_2$ $\dots$ $A_{N-1}$
输出格式
请输出答案。
说明/提示
### 限制条件
- 输入均为整数。
- $3 \leq N \leq 100$
- $0 \leq X \leq 100 \times (N-2)$
- $0 \leq A_i \leq 100$
### 样例解释 1
前 $4$ 轮的分数为 $40,60,80,50$。如果第 $5$ 轮取得 $70$ 分,则分数升序排列为 $S=(40,50,60,70,80)$,最终结果为 $50+60+70=180$。可以证明,为了使最终结果不少于 $180$,第 $5$ 轮至少需要取得 $70$ 分。
### 样例解释 2
前 $2$ 轮的分数为 $100,100$。如果第 $3$ 轮取得 $0$ 分,则分数升序排列为 $S=(0,100,100)$,最终结果为 $100$。注意,最大分数 $100$ 有多个,但只去除其中一个(最小分数同理)。可以证明,为了使最终结果不少于 $100$,第 $3$ 轮至少需要取得 $0$ 分。
### 样例解释 3
前 $4$ 轮的分数为 $0,0,99,99$。可以证明,无论第 $5$ 轮取得多少分,最终结果都无法达到 $200$。
由 ChatGPT 4.1 翻译