二分法
#include<iostream>
#include<cstdio>
#include<cmath>
#define PI acos(-1.0)
using namespace std;
int main()
{
int i;
double r,R,H,V;
int T;
scanf("%d",&T);
while(T--)
{
scanf("%lf%lf%lf%lf",&r,&R,&H,&V);
double midH,left=0,right=H,midr,downr=r,upr=R;
while(right-left>1e-7)
{
midH=(left+right)/2;
midr=(downr+upr)/2;
double v=(PI*midH*(midr*midr+midr*r+r*r))/3;
if(v<V){left=midH;downr=midr;}
else if(v>V) {right=midH;upr=midr;}
else break;
}
printf("%.6f\n",midH);
}
return 0;
}