#include <iostream>
#include <cstdio>
using namespace std;
//英语 看博友分析 抄博友程序 一维dp未实现 二维dp实现 背
long long dp[300][300];//i辆车 j台电脑
int main()
{
for(int i=0;i<=200;i++)
{
dp[i][i]=dp[1][i]=1;
}
for(int i=1;i<=200;i++)
{
for(int j=i+1;j<=200;j++)
{
dp[i][j]=dp[i-1][j-1]+dp[i][j-i];//背
}
}
while(1)
{
int n,k;//n台电脑 k辆车
cin>>n>>k;
if(n==0 && k==0)
{
break;
}
cout<<dp[k][n]<<endl;
}
return 0;
}