提交时间:2024-01-25 11:40:25

运行 ID: 128078

#include <bits/stdc++.h> #define int long long using namespace std; double x,y,c; bool check(double l){ double a = 1/sqrt(x*x-l*l),b = 1/sqrt(y*y-l*l); return ((a+b)*c<a*b; } signed main(){ while(cin>>x>>y>>c){ if(x==0||c==0||y==0){ cout<<"0"<<endl; } else { double l = 1,r = min(x,y); while(l<=r){ double mid = (l+r)/2.0; if(check(mid)){ l = mid+0.0001; } else r = mid-0.0001; } cout<<fixed<<setprecision(3)<<l<<endl; } } }