Codeforces Round 256 (Div. 2) |
---|
Закончено |
Бизон-Чемпион не только дружелюбный, но и любит программировать.
Определим функцию f(a), где a последовательность целых положительных чисел. Функция f(a) возвращает следующую последовательность: сначала идут все делители a1 в порядке возрастания, затем идут все делители a2 в порядке возрастания, и так далее до последнего элемента последовательности a. Например f([2, 9, 1]) = [1, 2, 1, 3, 9, 1].
Определим последовательность Xi, для целых i (i ≥ 0): X0 = [X] ([X] — это последовательность, состоящая из одного числа X), Xi = f(Xi - 1) (i > 0). Например, при X = 6 получится X0 = [6], X1 = [1, 2, 3, 6], X2 = [1, 1, 2, 1, 3, 1, 2, 3, 6].
Для заданных чисел X и k найдите последовательность Xk. Так как ответ может быть слишком большим, найдите только первые 105 элементов этой последовательности.
В единственной строке содержатся два целых числа, разделенных пробелом — X (1 ≤ X ≤ 1012) и k (0 ≤ k ≤ 1018).
Выведите элементы последовательности Xk в одной строке через пробел. Если количество элементов превосходит 105, то выведите только первые 105 элементов.
6 1
1 2 3 6
4 2
1 1 2 1 2 4
10 3
1 1 1 2 1 1 5 1 1 2 1 5 1 2 5 10
Название |
---|