Номер для школьной команды
Условие
В школе собирают команду на турнир. У каждого ученика на бейдже напечатано положительное число.
Классный руководитель хочет выбрать один общий «номер команды» d и наклеить его на бейджи. Ученик согласен, если его число делится на d без остатка.
Нужно выбрать самый большой возможный d так, чтобы согласились хотя бы k учеников.
Формат ввода
В первой строке даны два целых числа n и k. Во второй строке даны n целых чисел a1, a2, ..., an.
Формат вывода
Выведите одно целое число — максимальный d, который делит без остатка хотя бы k чисел из списка.
Ограничения
- 1 ≤ n ≤ 200000
- 1 ≤ k ≤ n
- 1 ≤ ai ≤ 1000000
- Время: 1 секунда
- Память: 256 МБ
Пример
Ввод: 5 3 2 4 6 9 12
Вывод: 3
Решить задачу с автопроверкой на Python →
Куда дальше
- Python на олимпиадах — где языка хватает с запасом, а где начинают значить лимиты — с замерами
- Олимпиада по информатике: с чего начать — два мира олимпиад — ВсОШ и перечневые: этапы, задания и на каком языке писать
- На программиста по олимпиаде: путь по классам — что даёт диплом, куда с ним берут на ИТ-направления и почему решает 9 класс