#include <iostream>
#include <cstdio>
using namespace std;
//英语 抄博友程序 方法多 组合数都是整数 有一种博友递推式方法没实现 组合数的因子数 背
int prim[440];
int da[440];
int dp[500][100];//抄博友
int js;
/*
long long cal(int n,int p)//抄博友程序 没掌握 素因子在阶乘中的个数 TLE
{
long long t=0;
while(n)//没掌握 背
{
t=t+n/p;
n=n/p;
}
return t;
}*/
int main()
{
js=0;
for(int i=2;i<=431;i++)
{
if(prim[i]==0)
{
for(int j=2;j*i<=431;j++)
{
prim[j*i]=1;
}
da[js]=i;
js++;
}
}
for(int i=2;i<=431;i++)//dp[i][j]表示i的阶乘中素数da[j]的指数 抄博友程序 记录
{
for(int j=0;j<js;j++)
{
int t=i;
while(t%da[j]==0)
{
t=t/da[j];
dp[i][j]++;
}
dp[i][j]=dp[i][j]+dp[i-1][j];
}
}
int n,k;
while(scanf("%d%d",&n,&k)!=EOF)
{
long long jg=1;
for(int i=0;i<js;i++)
{
//cout<<da[i]<<endl;
//cout<<cal(n,da[i])<<" "<<cal(n-k,da[i])<<" "<<cal(k,da[i])<<endl;
jg=jg*(dp[n][i]-dp[k][i]-dp[n-k][i]+1);
}
printf("%lld\n",jg);
//cout<<jg<<endl;
}
return 0;
}