#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:33554432")
using namespace std;
const double PI = 2 * acos(0.0);
const double EPS = 1e-8;
const int INF = (1 << 30) - 1;
int n, h;
long long d[36][36];
long long f(int n, int h) {
  if (d[n][h] >= 0) return d[n][h];
  if (h == 0) return 0;
  d[n][h] = 0;
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j < h - 1; ++j) d[n][h] += f(i, h - 1) * f(n - i - 1, j);
    for (int j = 0; j < h - 1; ++j) d[n][h] += f(i, j) * f(n - i - 1, h - 1);
    d[n][h] += f(i, h - 1) * f(n - i - 1, h - 1);
  };
  return d[n][h];
};
int main() {
  cin >> n >> h;
  for (int i = 0; i < n + 1; ++i)
    for (int j = 0; j < n + 1; ++j) d[i][j] = -1;
  d[0][0] = 1;
  for (int i = 1; i <= n; ++i) d[0][i] = 0;
  long long ans = 0;
  for (int i = h; i <= n; ++i) ans += f(n, i);
  cout << ans;
  return 0;
};
