#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
const int MAXINT=11;
int main()
{
int M,N;
cin>>M>>N;
int dp[MAXINT][MAXINT]={{0}};//dp[i][j]表示将i个苹果放j个盘子里
for(int j=1;j<=N;j++)//只有一个苹果
{
dp[1][j]=1;
}
dp[1][0]=0;
for(int i=0;i<=M;i++)//只有一个盘子
{
dp[i][1]=1;
}
//0个苹果
for(int j=1;j<=M;j++)
{
dp[0][j]=1;
}
//0个盘子
for(int i=1;i<=N;i++)
{
dp[i][0]=0;
}
for(int i=2;i<=M;i++)
{
for(int j=2;j<=N;j++)
{
if(j>i)
{
dp[i][j]=dp[i][i];
}
else
{
//分两种情况,一是盘子全部非空,而是盘子中有空的
dp[i][j]=dp[i-j][j]+dp[i][j-1];
}
}
}
cout<<dp[M][N]<<endl;
return 0;
}