eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Максимальний НСД

Максимальний НСД

Дано $n$ цілих чисел $a_1, a_2, \dots, a_n$. За одну операцію ви можете вибрати два індекси $i$ та $j$ такі, що $i \neq j$. Після чого збільшити $a_i$ на $1$, а $a_j$ зменшити на $1$ (навіть якщо вийде від'ємне число). Ви можете виконати цю операцію не більше $k$ разів (або не виконувати взагалі). Знайдіть максимально можливе число, яке ділитиме усі числа, після виконання операцій. Ціле додатне число $x$ ділить ціле число $y$, якщо існує таке ціле число $z$, що $y=xz$. \InputFile Перший рядок містить два цілі числа $n$ та $k$ ($2 \leq n \leq 500$, $0 \leq k \leq 10^9$). Другий рядок містить $n$ цілих чисел $a_1, a_2, \dots, a_n$ ($1 \leq a_i \leq 10^6$). \OutputFile Виведіть одне ціле число~--- відповідь на задачу.
Ліміт часу 1 секунда
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
2 3
8 20
Вихідні дані #1
7
Вхідні дані #2
2 10
3 5
Вихідні дані #2
8
Вхідні дані #3
4 5
10 1 2 22
Вихідні дані #3
7
Вхідні дані #4
8 7
1 7 5 6 8 2 6 5
Вихідні дані #4
5
Автор Anton Tsypko