• <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>

            misschuer

            常用鏈接

            統計

            積分與排名

            百事通

            最新評論

            hdu 1006

              1 #include <iostream>
              2 #include <vector>
              3 #include <algorithm>
              4 using namespace std;
              5 
              6 double T = 43200;
              7 double D;
              8 
              9 struct Insect {
             10 
             11     double x, y;
             12 }in3 ];
             13 
             14 vector<Insect> V[ 4 ];
             15 //求秒針,分針,時針的時間段的交集
             16 //這里先求秒針,分針的時間段的交集, 然后這個求出的交集再和時針的時間段求交集
             17 void solved(vector<Insect> v1, vector<Insect> v2) {
             18 
             19     vector<Insect> vv;
             20     int n = v1.size(), m = v2.size();
             21     int i = 0, j = 0;
             22     while(i < n && j < m) {
             23     
             24         Insect p, q, r;
             25         p = v1[ i ];
             26         q = v2[ j ];
             27 
             28         if(p.x <= q.x) {
             29         
             30             if(p.y > q.x) {
             31             
             32                 r.x = q.x;
             33                 if(q.y > p.y) {
             34                     
             35                     r.y = p.y;
             36                     i ++;
             37                 }
             38                 else {
             39                     
             40                     r.y = q.y;
             41                     j ++;
             42                 }
             43                 vv.push_back(r);
             44             }
             45             else {
             46             
             47                 i ++;
             48             }
             49         }
             50         else {
             51         
             52             if(q.y > p.x) {
             53             
             54                 r.x = p.x;
             55                 if(q.y > p.y) {
             56                 
             57                     r.y = p.y;
             58                     i ++;
             59                 }
             60                 else {
             61                 
             62                     r.y = q.y;
             63                     j ++;
             64                 }
             65                 vv.push_back(r);
             66             }
             67             else {
             68             
             69                 j ++;
             70             }
             71         }
             72     }
             73     V[ 3 ] = vv;
             74 }
             75 
             76 //分別求出秒針,分針,時針,相互之間角度>=D的時間段
             77 //秒針和分針角度>=D 可能的時間段為 (10D+3600k)/59<=t<=(3600+3600k-10D)/59
             78 //秒針和時針角度>=D 可能的時間段為 (120D+43200k)/719<=t<=(43200+43200k-120D)/719
             79 //分針和時針角度>=D 可能的時間段為 (120D+43200k)/11<=t<=(43200+43200k-120D)/11
             80 void terminal() {
             81 
             82     double cnt = 0;
             83     for(int i = 0; i < 4++ i) V[ i ].clear();
             84     for(int k = 0; k <= 1000++ k) {
             85     
             86         in0 ].x = (10.0*D+3600.0*k) / 59.0;
             87         in0 ].y = (3600.0+3600.0*k-10.0*D) / 59.0;
             88 
             89         in1 ].x = (120.0*D+43200.0*k) / 719.0;
             90         in1 ].y = (43200.0+43200.0*k-120.0*D) / 719.0;
             91 
             92         in2 ].x = (120.0*D+43200*k) / 11.0;
             93         in2 ].y = (43200.0+43200.0*k-120.0*D) / 11.0;
             94 
             95         if(in0 ].x <= T) {
             96         
             97             if(in0 ].y > T) in0 ].y = T;
             98             V[ 0 ].push_back(in0 ]);
             99         }
            100 
            101         if(in1 ].x <= T) {
            102         
            103             if(in1 ].y > T) in1 ].y = T;
            104             V[ 1 ].push_back(in1 ]);
            105         }
            106 
            107         if(in2 ].x <= T) {
            108         
            109             if(in2 ].y > T) in2 ].y = T;
            110             V[ 2 ].push_back(in2 ]);
            111         }
            112     }
            113     solved(V[ 0 ], V[ 1 ]);
            114     solved(V[ 2 ], V[ 3 ]);
            115     for(int j = 0; j < V[ 3 ].size(); ++ j) {
            116 
            117         Insect p = V[ 3 ][ j ];
            118         cnt += p.y - p.x;
            119     }
            120     printf("%.3lf\n", cnt*100.0/T);
            121 }
            122 
            123 int main() {
            124 
            125     while(~scanf("%lf"&D)) {
            126     
            127         if(D < 0break;
            128         terminal();
            129     }
            130     return 0;
            131 }

            posted on 2011-11-07 21:33 此最相思 閱讀(547) 評論(0)  編輯 收藏 引用

            久久综合视频网| 久久久久99精品成人片| 国内精品久久久久久久涩爱| 久久久久亚洲精品中文字幕| 国产精品久久波多野结衣| 亚洲精品久久久www| 一本综合久久国产二区| 久久精品国产精品亚洲下载| 一级做a爰片久久毛片人呢| 国内精品伊人久久久久| 精品久久久久久成人AV| 97久久精品无码一区二区| 欧美黑人激情性久久| 麻豆成人久久精品二区三区免费| 蜜桃麻豆WWW久久囤产精品| 中文字幕精品久久久久人妻| 成人综合久久精品色婷婷| 精品久久久久久久久免费影院| 亚洲第一永久AV网站久久精品男人的天堂AV | 久久99精品久久久久久hb无码| 精品国产乱码久久久久久呢| 亚洲一区精品伊人久久伊人| 99久久这里只精品国产免费| 人妻精品久久无码专区精东影业| 久久精品国产亚洲AV无码麻豆| 国内精品久久久久久久亚洲| 伊色综合久久之综合久久| 精品久久久久香蕉网| 久久亚洲国产成人精品无码区| 无遮挡粉嫩小泬久久久久久久| 国产精品免费久久久久电影网| 久久91精品国产91久| 久久国产精品久久久| 超级碰碰碰碰97久久久久| 日本免费一区二区久久人人澡| 久久精品无码一区二区WWW| 久久国产精品二国产精品| 久久国产精品久久久| 久久99国产综合精品女同| 久久精品视频一| 亚洲欧洲精品成人久久奇米网|