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

Подсчет делителей

Подсчет делителей

Найдите первые n целых чисел, которые имеют в точности k делителей.

Делителем целого числа a называется такое целое b, что отношение a / b является целым.

По заданным n и k найдите первые n натуральных чисел, которые имеют в точности k различных натуральных делителей, не больших 1018. Если общее количество таких чисел меньше n, найдите все их.

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

Два целых числа n и k (1n, k110 000) - количество чисел, которое следует найти, и требуемое число делителей.

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

Вывести n чисел, каждое в отдельной строке: первые n натуральных чисел, имеющих в точности k различных натуральных делителей, не больших 1018, в возрастающем порядке. Если существует m < n таких чисел, то вывести -1 в каждой из оставшихся n - m строк.

Ліміт часу 3 секунди
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
5 4
Вихідні дані #1
6
8
10
14
15
Вхідні дані #2
4 29
Вихідні дані #2
268435456
22876792454961
-1
-1

Пояснення: В первом тесте следует вывести первые пять чисел с четырьмя делителями. Это 6 (делители 1, 2, 3, 6), 8 (делители 1, 2, 4, 8), 10 (делители 1, 2, 5, 10), 14 (делители 1, 2, 7, 14) и 15 (делители 1, 3, 5, 15).

Джерело 2014 Петрозаводск, Ivan Kazmenko Contest, Август 22, Задача C