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])