#include<cstdio>
using namespace std;
int n,m,f[32][32];
int main()
{
scanf("%d%d",&n,&m);
f[1][0]=1;
for(int j=1;j<=m;j++){
for(int i=2;i<=n-1;i++){
f[i][j]+=f[i+1][j-1]+f[i-1][j-1];
}
f[1][j]=f[2][j-1]+f[n][j-1];
f[n][j]=f[1][j-1]+f[n-1][j-1];
}
printf("%d",f[1][m]);
return 0;
}
/* 用f[i][j]表示第i个人在进行了j轮之后能拿到球的方案
不难得到 状态转移方程f[i][j]+=f[i+1][j-1]+f[i-1][j-1]
需注意 f[1][0]=1; 我刚开始写的f[1][1]=1 咋也不对
还有就是 因为这个题n个人坐成一圈 ,两端需要单独处理