#include <bits/stdc++.h>
//#include <iostream>
using namespace std;

int n,k,ans=0;

void dfs(int pre,int x,int co){
	if(co>=k){
		if(x==n)
			ans++;
		return ;
	}
	
	for(int i=pre;i<=n;i++){ //每次从上一个取到的值开始遍历,防止相同方案重复计算
		if(i+x>n){
			break;
		}else{
			x=x+i;
			co++;
			dfs(i,x,co);//将当前取到的值传入pre
			x=x-i;
			co--;
		}
	}
	
	return ;
}

int main(){
	cin>>n>>k;
	
	dfs(1,0,0);
	cout<<ans;
	 
	return 0;
}