Номер для школьной команды

тема: Теория чисел (НОД, НОК, остатки) · уровень: продвинутый

Условие

В школе собирают команду на турнир. У каждого ученика на бейдже напечатано положительное число.

Классный руководитель хочет выбрать один общий «номер команды» d и наклеить его на бейджи. Ученик согласен, если его число делится на d без остатка.

Нужно выбрать самый большой возможный d так, чтобы согласились хотя бы k учеников.

Формат ввода

В первой строке дано целое число t — количество наборов данных. Далее идут t наборов данных. В каждом наборе в первой строке даны два целых числа n и k. Во второй строке даны n целых чисел a1, a2, ..., an.

Формат вывода

Для каждого набора данных выведите одно целое число — максимальный d, который делит без остатка хотя бы k чисел из списка. Ответы выводите в отдельных строках.

Ограничения

Пример

Ввод: 3 1 1 1 1 1 1000000 5 3 2 4 6 9 12

вывод: 1 1000000 3

Решить задачу с автопроверкой на Python →

Куда дальше