CF1316A Grade Allocation

题目描述

有 $n$ 名学生正在参加考试。本次考试的最高分为 $m$。设第 $i$ 名学生的分数为 $a_i$。你可以访问存储了所有学生成绩的学校数据库。 你可以更改每个学生的分数,但需满足以下条件: - 所有分数均为整数; - $0 \leq a_i \leq m$; - 全班的平均分不变。 你是第 $1$ 名学生,你希望让自己的分数尽可能高。 请你求出在满足上述所有条件的情况下,你自己(即 $a_1$)能获得的最高分数。

输入格式

每个测试点包含多组测试数据。 第一行包含一个整数 $t$($1 \leq t \leq 200$),表示测试数据组数。 每组测试数据的第一行包含两个整数 $n$ 和 $m$($1 \leq n \leq 10^3$,$1 \leq m \leq 10^5$),分别表示学生人数和最高分。 每组测试数据的第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($0 \leq a_i \leq m$),表示每个学生的分数。

输出格式

对于每组测试数据,输出一个整数,表示在满足所有条件的情况下你自己能获得的最高分数。

说明/提示

在第一个样例中,$a = [1,2,3,4]$,平均分为 $2.5$。你可以将数组 $a$ 改为 $[10,0,0,0]$,平均分仍为 $2.5$,且所有条件均满足。 在第二个样例中,$0 \leq a_i \leq 5$。你可以将 $a$ 改为 $[5,1,1,3]$。你无法进一步增加 $a_1$,否则会违反 $0 \leq a_i \leq m$ 的条件。 由 ChatGPT 4.1 翻译