二分水下高度为hh,因为ρvg=mg,ρ=1ρvg = mg,ρ = 1,所以m=vm = v,所以我们可以求水下的体积来得到hh,从而得到需要的答案2rh2*r-h\\. 球方程为:x2+(yr)2=r2x^2 + (y-r)^2 = r^2,水下面积为πr2\pi r^2,将水面下方的物体垂直的分为一片一片的小圆柱体,然后积分区间就为[0,h],即0h(r2(yr)2)πdy\int_{0}^{h}(r^2-(y-r)^2)\pi\mathrm{d}y,最后久可以得到V=rh2h33πV = r*h^2 - \frac{h^3}{3} \pi

#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
# include<bits/stdc++.h>
# define  PII pair<int,int>
# define  PDI pair<double,int>
# define  PIII pair<int,PII>
# define int long long
using namespace std;
const int N = 2e5+10;
const int mod = 32768;
const int inf = 0x3f3f3f3f;
const double pi = acos(-1); 

int T,n,m,k1,k2,ans,k;

void solve(){
	      double r,m;
	      cin >> r >> m;
	      double L = 0 , R = 2 * r ;
	      while(R - L >= 1e-12){
		  	  double mid = (L + R )/2;
		  	  if(pi * (r*mid*mid-mid*mid*mid/3) > m) R = mid;
		  	   else L = mid;
		  }
		  cout<<fixed<<setprecision(2)<<2*r-L;
	       
}
/*
*/
signed main(){
	std::ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
   // cin >> T;
     T = 1;
    while(T--){
		 solve();
	}
 	return 0;
}