• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-21  評論-10  文章-21  trackbacks-0
            二分,單獨判溢出的情況

             1 #include<iostream>
             2 #include<cstdio>
             3 #include<cmath>
             4 using namespace std;
             5 
             6 #define maxn 60000
             7 struct node{
             8     int b, h, w, d;
             9     void in(){
            10         scanf("%d %d %d %d",&b, &h, &w, &d);
            11     }
            12 }cistern[maxn];
            13 
            14 void checkmin(double & x, double y){if(x > y)x = y;}
            15 
            16 void checkmax(double & x, double y){if(x < y)x = y;}
            17 
            18 int n, volumn;
            19 
            20 double calc(double x){
            21     double ans = 0;
            22     for(int i = 0; i < n; i++){
            23         if(cistern[i].b > x)continue;
            24         ans += min( x - cistern[i].b , cistern[i].h*1.0 ) * cistern[i].d * cistern[i].w;
            25     }
            26     return ans;
            27 }
            28 
            29 double b_search(double l ,double r){
            30     while(r - l > 1e-8){
            31         double mid = (l + r)/2;
            32         if(calc(mid) >= volumn )r = mid; else l = mid;
            33     }
            34     return ( r + l ) / 2;
            35 }
            36 
            37 int main(){
            38     //freopen("in","r",stdin);
            39     int testcase;
            40     scanf("%d",&testcase);
            41     while(testcase--){
            42         scanf("%d",&n);
            43         double l, r;
            44         r = 0,  l = 1e100;
            45         for(int i = 0; i < n; i++)
            46         {
            47             cistern[i].in();
            48             checkmax( r, cistern[i].b + cistern[i].h );
            49             checkmin( l, cistern[i].b );
            50         }
            51         scanf("%d",&volumn);
            52         if(calc(r) < volumn){
            53             printf("OVERFLOW\n");
            54             continue;
            55         }
            56         printf("%.2lf\n", b_search(l , r) );
            57     }
            58 }


            posted on 2009-11-02 22:26 wangzhihao 閱讀(179) 評論(0)  編輯 收藏 引用 所屬分類: geometry
            精品久久久久久国产牛牛app| 伊人伊成久久人综合网777| 香蕉久久久久久狠狠色| 日本加勒比久久精品| 一本久久知道综合久久| 伊人久久免费视频| 日韩欧美亚洲综合久久 | 久久91精品国产91久久麻豆| 久久综合久久综合久久综合| 久久综合给久久狠狠97色| 国产成人精品久久| 色婷婷久久综合中文久久蜜桃av| 狠狠色丁香久久综合婷婷| 亚洲国产精品一区二区三区久久| 99久久综合狠狠综合久久止| 99久久精品国产一区二区| 久久伊人精品青青草原高清| 伊人久久大香线焦AV综合影院| 91久久成人免费| 国内精品久久人妻互换| 久久久国产乱子伦精品作者| 久久久久99精品成人片直播| 亚洲欧美另类日本久久国产真实乱对白| 久久久亚洲欧洲日产国码aⅴ | 久久只有这精品99| 久久久久婷婷| 久久久久久av无码免费看大片| 久久久av波多野一区二区| 中文字幕日本人妻久久久免费| 中文字幕精品无码久久久久久3D日动漫 | 久久亚洲高清观看| 中文字幕无码免费久久| 久久国产成人午夜aⅴ影院 | 欧洲精品久久久av无码电影| 久久久www免费人成精品| 久久午夜福利无码1000合集| 色偷偷91久久综合噜噜噜噜| 久久午夜无码鲁丝片午夜精品| 欧美与黑人午夜性猛交久久久| 国产成人香蕉久久久久| 久久国产免费直播|