#include <iostream>
using namespace std;
int p(int n,int m){
if(n==1||m==1) return 1;
else if(n<m) return p(n,n);
else if(n==m) return 1+p(n,n-1);
else{
return p(n,m-1)+p(n-m,m);
}
}
int main(){
int n,m;
cin>>n>>m;
cout<<p(n,m);
}
#include <iostream>
using namespace std;
int p(int n,int m){
if(n==1||m==1) return 1;
else if(n<m) return p(n,n);
else if(n==m) return 1+p(n,n-1);
else{
return p(n,m-1)+p(n-m,m);
}
}
int main(){
int n,m;
cin>>n>>m;
cout<<p(n,m);
}