#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
const int N = 100010;
int n, day;
bool check(int num)//判断第一天吃掉num块巧克力是否可以
{
int c = n;
int d = day;
int div = num;
while(d)
{
c -= div;
d--;
div = ceil((double)div / 2);
if(c < 0)
return false; //不可以
}
return true;//可以
}
int main()
{
cin >> day >> n;
int l = 1, r = n;
while(l < r) //二分枚举
{
int mid = (l + r + 1) >> 1;
if(!check(mid)) r = mid - 1;
else l = mid;
}
cout << l << endl;
return 0;
} 
京公网安备 11010502036488号