#include <bits/stdc++.h>
using namespace std;
vector<long long int> v[100];
long long int a[100];
void bhoro(long long int cup, long long int volume) {
  long long int temp = 2 << 20;
  if (a[cup] + volume <= temp) {
    a[cup] += volume;
  } else {
    temp = a[cup] + volume - temp;
    if (v[cup].size()) {
      bhoro(v[cup][0], temp / 2);
      bhoro(v[cup][1], temp / 2);
    }
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  long long int n, t, i, j, k, temp = 2 << 20, ans = 0;
  cin >> n >> t;
  for (i = 1, j = 1; i < 10; i++) {
    for (k = 0; k < i; k++, j++) {
      v[j].push_back(((i * (i + 1)) / 2) + k + 1);
      v[j].push_back(((i * (i + 1)) / 2) + k + 2);
    }
  }
  for (i = 1; i <= t; i++) {
    bhoro(1, temp);
  }
  for (i = 1; i <= (n * (n + 1)) / 2; i++)
    if (a[i] == temp) ans++;
  cout << ans;
}
