#include <iostream>
using namespace std;
int main() {
int n, m;
while (cin >> n >> m) { // 注意 while 处理多个 case
int dp[n+1][m+1];
for(int i=1;i<n+1;i++){
dp[i][1]=1;
}
for(int i=1;i<m+1;i++){
dp[1][i]=1;
}
for(int i=2;i<n+1;i++){
for(int j=2;j<m+1;j++){
if(i>j){
dp[i][j]=dp[i][j-1]+dp[i-j][j];
}
else if(i==j){
dp[i][j]=dp[i][j-1]+1;
}
else{
dp[i][j]=dp[i][j-1];
}
}
}
cout<<dp[n][m]<<endl;
}
}
// 64 位输出请用 printf("%lld")

京公网安备 11010502036488号