Олимпиадный тренинг

Задача . A. Распределение баллов


Задача

Темы: реализация *800

\(n\) учеников пишут экзамен. Максимальный возможный балл за этот экзамен  — \(m\). Пусть \(a_{i}\)  — оценка \(i\)-го ученика. У вас есть доступ к школьной базе данных, в которой хранятся оценки всех учеников.

Вы можете изменить оценку каждого ученика таким образом, чтобы выполнялись следующие условия:

  • Все оценки  — целые числа
  • \(0 \leq a_{i} \leq m\)
  • Средняя оценка в классе остается такой же.

Вы ученик \(1\), и хотели бы максимизировать свою оценку.

Какую наибольшую оценку вы можете себе присвоить, чтобы все условия выполнялись?

Входные данные

Каждый тест содержит несколько наборов входных данных.

Первая строка содержит количество наборов входных данных \(t\) (\(1 \le t \le 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\le a_i\le m\).


Примеры
Входные данныеВыходные данные
1 2
4 10
1 2 3 4
4 5
1 2 3 4
10
5

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя