import sys

m, n = map(int, sys.stdin.readline().strip().split())

# 初始状态
dp = [[0 for i in range(n + 1)] for i in range(m + 1)]

# 状态转移
for i in range(m + 1): #苹果
    for j in range(1, n + 1): #盘子
        # 边界
        if i == 0 or j == 1:
            dp[i][j] = 1
            continue
        # 苹果少于盘子,多余的盘子等于没有
        if i < j:
            dp[i][j] = dp[i][i]
            
        #苹果大于等于盘子,可以放满或者少一个
        else:
            dp[i][j] = dp[i - j][j] + dp[i][j - 1]

print(dp[m][n])