피보나미얼

아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

피보나치 수열 fnf_n은 다음과 같이 정의한다.

f0=0,f1=1,fn=fn1+fn2    (n2)f_0 = 0, \quad f_1 = 1, \quad f_n = f_{n-1} + f_{n-2} \;\; (n \ge 2)

피보나미얼 FnF_n (n1n \ge 1)은 Fn=f1×f2××fnF_n = f_1 \times f_2 \times \cdots \times f_n으로 정의한다. 즉 f1f_1부터 fnf_n까지를 모두 곱한 값이다.

22 이상 pp 이하인 각 자연수 kk에 대해, FnF_n이 더 이상 kk로 나누어떨어지지 않을 때까지 FnF_nkk로 몇 번 나눠야 하는지 구하는 프로그램을 작성하라.

입력

첫째 줄에 자연수 nnpp가 공백 하나를 사이에 두고 주어진다. (1n1091 \le n \le 10^9, 2p1032 \le p \le 10^3)

출력

p1p - 1개의 줄에 답을 출력한다. ii번째 줄 (1ip11 \le i \le p - 1)에는 FnF_n이 더 이상 i+1i + 1로 나누어떨어지지 않게 하려면 FnF_ni+1i + 1로 몇 번 나눠야 하는지 출력한다.

힌트

F12=1570247078400=29×34×52×7×11×13×17×89F_{12} = 1570247078400 = 2^9 \times 3^4 \times 5^2 \times 7 \times 11 \times 13 \times 17 \times 89이므로, F12F_{12}22로 아홉 번, 44로 네 번 나눌 수 있다.