#include <bits/stdc++.h>
using namespace std;
long long res[36][36];
long long pot(long long base, int exp) {
  long long res = 1;
  for (int i = 0; i < (exp); i++) res *= (long long)base;
  return res;
}
long long calc(int n, int h) {
  if (n < h) return 0;
  if (n == 0) {
    if (h == -1 || h == 0) return 1;
  }
  if (n == h) return pot(2ll, n - 1);
  if (n == 1) {
    if (h <= 0)
      return 1;
    else
      return 0;
  }
  if (h == -1) h++;
  if (res[n][h] != -1) return res[n][h];
  long long result = 0;
  for (int i = 0; i < n; i++) {
    result = result + calc(i, h - 1) * calc(n - 1 - i, 0) -
             calc(i, h - 1) * calc(n - 1 - i, h - 1) +
             calc(i, 0) * calc(n - 1 - i, h - 1);
  }
  res[n][h] = result;
  return result;
}
int main() {
  for (int i = 0; i < (36); i++)
    for (int j = 0; j < (i + 1); j++) res[i][j] = -1;
  int n, h;
  cin >> n >> h;
  cout << calc(n, h) << endl;
}
