Лимит времени 2000/2000/2000/2000 мс. Лимит памяти 262144/262144/262144/262144 Кб.
Problem description
Натуральное число a называется делителем натурального числа b, если b = ac для некоторого натурального числа c. Например, делителями числа 6 являются числа 1, 2, 3 и 6. Два числа называются взаимно простыми, если у них нет общих делителей кроме 1. Например, 16 и 27 взаимно просты, а 18 и 24 — нет.
Будем называть нормальным набор из k чисел (a1, a2, …, ak), если выполнены следующие условия:
- каждое из чисел ai является делителем числа n;
- выполняется неравенство a1 < a2 < … < ak;
- числа ai и ai+1 для всех i от 1 до k – 1 являются взаимно простыми;
- произведение a1a2…ak не превышает n.
Например, набор (2, 9, 10) является нормальным набором из 3 делителей числа 360.
Требуется написать программу, которая по заданным значениям n и k определяет количество нормальных наборов из k делителей числа n.
Input
Первая строка входного файла содержит два целых числа: n и k (2 ≤ n ≤ 108, 2 ≤ k ≤ 10).
Output
В выходном файле должно содержаться одно число — количество нормальных наборов из k делителей числа n.
Example
| stdin |
stdout |
|
90 3 |
16 |
| 10 2 |
4 |
Для отправки решений необходимо выполнить вход.
|