#include <iostream>
using namespace std;

/*
    m 个苹果
    n 个盘子
*/
int ways(int m, int n) {
    if (m == 0) { //苹果没了,这是一种方法
        return 1;
    }
    if (n == 0) { //苹果还有,但是没盘子了,这种不行
        return 0;
    }
    if (m < n) { //苹果的数量 < 盘子数量  那么拿掉几个盘子不影响结果
        return ways(m, m);
    }
    if (m >= n) { //苹果的数量 >= 盘子数量
        return ways(m - n, n) + ways(m, n - 1);
    }
    return 0;
}

int main() {
    int m, n; //m个苹果, n个盘子
    while (cin >> m >> n) { // 注意 while 处理多个 case
        int t = ways(m, n);
        printf("%d\n", t);
    }
}
// 64 位输出请用 printf("%lld")