//Accepted 900 KB 344 ms
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
;
int pri[imax_n];
int a[imax_n][imax_n];
void prime()
{
;i<imax_n;i++)
{
for (int j=i*i;j<imax_n;j+=i)
{
pri[j]=;
}
}
}
int getNumber(int n,int k)
{
;
)
{
ans+=n/k;
n=n/k;
}
return ans;
}
void getA()
{
;i<=;i++)
{
;j<=;j++)
{
)
a[i][j]=getNumber(i,j);
}
}
}
void slove(int n,int k)
{
__int64 ans=;
;i<=n;i++)
)
{
//printf("a[%d][%d]=%d\n",n,i,a[n][i]);
//printf("a[%d][%d]=%d\n",k,i,a[k][i]);
//printf("a[%d][%d]=%d\n",n-k,i,a[n-k][i]);
;
ans*=t;
}
printf("%I64d\n",ans);
}
int main()
{
prime();
getA();
int n,k;
while (scanf("%d%d",&n,&k)!=EOF)
{
slove(n,k);
}
;
}