Степени перестановок
Простая
Ограничение по времени выполнения 4 секунды
Ограничение по использованию памяти 64 мегабайта
Пусть N - натуральное число и S = {1, 2, 3, ..., N}. Для данного натурального числа d функция f : S → S называется красивой, если существует такая взаимно однозначная функция g : S → S, что для любого x из S выполнено равенство g(g(g(...g(x)...))) = f(x), где g повторяется ровно d раз.
Требуется вычислить количество красивых функций. Так как ответ может быть большим, то его следует вывести по модулю 1000000009.
Входные данные
В единственной строке входного файла заданы натуральные числа N и d (N ≤ 2000, d ≤ 10^18).
Выходные данные
В выходной файл выведите количество красивых функций для данных N и d по модулю 1000000009.
Примеры
Ввод #1
Ответ #1
Отправки 8
Коэффициент принятия 25 %