#include <bits/stdc++.h>
using namespace std;
long long dp[40][40];
long long rec(int n, int h) {
  long long &ret = dp[n][h];
  if (ret != -1) return ret;
  if (n == 1) return ret = (h == 1);
  if (n * h == 0) return ret = (h + n == 0);
  ret = 0;
  for (int root = 1; root < n + 1; root++)
    for (int ht = 0; ht < h; ht++) {
      ret += rec(root - 1, h - 1) * rec(n - root, ht);
      if (ht == h - 1) continue;
      ret += rec(root - 1, ht) * rec(n - root, h - 1);
    }
  return ret;
}
int main() {
  memset(dp, -1, sizeof dp);
  int n, h;
  cin >> n >> h;
  long long ans = 0;
  for (int i = h; i < n + 1; i++) ans += rec(n, i);
  cout << ans << endl;
  return 0;
}
