#include <bits/stdc++.h>
using namespace std;
const int N = 20 + 10, M = 1e4 + 20, mod = 1000000007, inf = 2e9;
double a[N][N];
double ans[N][N];
int main() {
  int x, y, z;
  for (int i = 0; i <= 10; i++)
    for (int t = 0; t <= 10; t++) a[i][t] = 0, ans[i][t] = 0;
  a[1][1] = 1.000;
  for (int i = 1; i < 10; i++)
    for (int t = 1; t <= i; t++)
      a[i + 1][t] = a[i + 1][t] + a[i][t] / 2,
            a[i + 1][t + 1] = a[i + 1][t + 1] + a[i][t] / 2;
  cin >> x >> y;
  while (y--) {
    ans[1][1] = ans[1][1] + 1.0;
    for (int i = 1; i < x; i++)
      for (int t = 1; t <= i; t++)
        if (ans[i][t] > 1.00000000)
          ans[i + 1][t] = ans[i + 1][t] + (ans[i][t] - 1) / 2,
                  ans[i + 1][t + 1] = ans[i + 1][t + 1] + (ans[i][t] - 1) / 2,
                  ans[i][t] = 1.0;
  }
  int sum = 0;
  for (int i = 1; i <= x; i++)
    for (int t = 1; t <= x; t++)
      if (ans[i][t] - 1.0 >= 0.000000001 ||
          abs(ans[i][t] - 1.0) <= 0.0000000001)
        sum += 1;
  printf("%d\n", sum);
  return 0;
}
