#include <bits/stdc++.h>
using namespace std;
const int N = 40;
long long ans, dp[N][N];
long long solve(int n, int h) {
  if (!n && !h) return 1;
  if (!n || !h) return 0;
  long long &x = dp[n][h];
  if (x != -1) return x;
  x = 0;
  for (int i = 1; i <= n; i++) {
    long long o1 = 0, o2 = 0;
    for (int j = 0; j < h; j++) o1 += solve(n - i, j);
    o1 *= solve(i - 1, h - 1);
    for (int j = 0; j < h - 1; j++) o2 += solve(i - 1, j);
    o2 *= solve(n - i, h - 1);
    x += o1 + o2;
  }
  return x;
}
int main() {
  int n, h;
  cin >> n >> h;
  memset(dp, -1, sizeof dp);
  for (int i = h; i <= n; i++) ans += solve(n, i);
  cout << ans;
}
