标签:
Input
Output
Sample Input
Sample Output
/* 耐心点推个公式 精度!!!。。。 */ #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> using namespace std; const double esp = 1e-9; const double pi = acos(-1.0); int T; double r, R, H, V; double check(double x) { double rr = x/H*(R-r) + r; // printf("%f\n",rr); double V1 = pi/3*x*(rr*rr + r*r + rr*r); return V1; } int main() { scanf("%d", &T); while(T--){ scanf("%lf%lf%lf%lf", &r, &R, &H, &V); // if(r == R) { // printf("%.6f\n", V/(pi*r*r)); // continue; // double ll = 0, rr = 100, mid; while(rr - ll > esp){ mid = (ll + rr) / 2; double VV = check(mid); if(fabs(VV - V) <= esp) break; else if(VV > V) rr = mid - esp; else ll = mid + esp; } printf("%.6f\n", mid); } return 0; }
标签:
原文地址:http://www.cnblogs.com/zero-begin/p/4694134.html