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

            常用鏈接

            統(tǒng)計(jì)

            積分與排名

            百事通

            最新評(píng)論

            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 //求秒針,分針,時(shí)針的時(shí)間段的交集
             16 //這里先求秒針,分針的時(shí)間段的交集, 然后這個(gè)求出的交集再和時(shí)針的時(shí)間段求交集
             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 //分別求出秒針,分針,時(shí)針,相互之間角度>=D的時(shí)間段
             77 //秒針和分針角度>=D 可能的時(shí)間段為 (10D+3600k)/59<=t<=(3600+3600k-10D)/59
             78 //秒針和時(shí)針角度>=D 可能的時(shí)間段為 (120D+43200k)/719<=t<=(43200+43200k-120D)/719
             79 //分針和時(shí)針角度>=D 可能的時(shí)間段為 (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 此最相思 閱讀(549) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            伊人久久大香线蕉亚洲五月天| 性高湖久久久久久久久| 秋霞久久国产精品电影院| 国产精品VIDEOSSEX久久发布| 国产精品欧美久久久久无广告| 久久精品无码一区二区三区免费 | 精品乱码久久久久久夜夜嗨| 亚洲精品97久久中文字幕无码| 一本一本久久aa综合精品| 丁香狠狠色婷婷久久综合| 四虎影视久久久免费观看| 久久国产色AV免费观看| 亚洲国产精品狼友中文久久久| 蜜臀av性久久久久蜜臀aⅴ麻豆| 国产成人精品久久一区二区三区av | 久久综合给合久久国产免费| 精品国产91久久久久久久a | 久久99精品久久久久子伦| 国内精品久久久久影院网站| 亚洲欧美成人综合久久久| 久久国产香蕉一区精品| 久久久久久久久久久久中文字幕| 久久天天日天天操综合伊人av| 狠色狠色狠狠色综合久久| 一本久久知道综合久久| 亚洲国产婷婷香蕉久久久久久| 久久综合久久综合久久| 久久久久无码精品国产| 久久人人爽人人爽人人片AV麻烦| 99久久国产综合精品网成人影院 | 久久久WWW免费人成精品| 国产精品久久亚洲不卡动漫| 无码AV波多野结衣久久| 精品久久久久久中文字幕大豆网 | 久久精品综合网| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 久久久久久九九99精品| 亚洲中文字幕无码久久综合网| 久久亚洲AV成人无码软件| 婷婷久久五月天| 久久精品国产亚洲av麻豆图片 |