首页 > 其他 > 详细

ZOJ 3203: Light Bulb

时间:2017-07-30 00:48:01      阅读:307      评论:0      收藏:0      [点我收藏+]

ZOJ 3203: Light Bulb

 

 1 ///@author Sycamore, ZJNU
 2 ///@date 2017-02-09
 3 #include<algorithm>
 4 #include<iostream>
 5 #include<iomanip>
 6 #define eps 1e-10
 7 using namespace std;
 8 double H, h, L, D;
 9 double getL(double a)
10 {
11     return (h - a) / (H - a)*D + a;
12 }
13 int main()
14 {
15     int T;
16     cin >> T;
17     while (T--)
18     {
19         cin >> H >> h >> D;
20         double l = 0, r = h,lmid,rmid;
21         while (r-l >= eps)
22         {
23             lmid = r / 3.0 + l * 2 / 3.0;
24             rmid = l / 3.0 + r * 2 / 3.0;
25             if (getL(lmid) -getL(rmid)>=eps)r=rmid;
26             else l=lmid;
27         }
28         cout << fixed<<setprecision(3)<<getL((r + l) / 2) << endl;
29     }
30     return 0;
31 }

 

ZOJ 3203: Light Bulb

原文:http://www.cnblogs.com/zjnu/p/7258031.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!