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

            Why so serious? --[NKU]schindlerlee

            pku3744

            schindlerlee原創(chuàng),禁止轉(zhuǎn)載和用于商業(yè)用途
            剛比賽完,先貼代碼
              1 /* 
              2  * SOUR:pku 3744
              3  * ALGO:compulicted
              4  * DATE: 2009年 08月 23日 星期日 12:37:44 CST
              5  * COMM:3
              6  * */
              7 #include<iostream>
              8 #include<cstdio>
              9 #include<cstdlib>
             10 #include<cstring>
             11 #include<algorithm>
             12 using namespace std;
             13 #define inf 0x7fffffff
             14 #define debug 1
             15 double p;
             16 int mine[26], n;
             17 
             18 struct M {
             19     double v11, v12, v21, v22;
             20     M operator*( M b)
             21     {
             22         M c;
             23         c.v11 = v11 * b.v11 + v12 * b.v21;
             24         c.v12 = v11 * b.v12 + v12 * b.v22;
             25         c.v21 = v21 * b.v11 + v22 * b.v21;
             26         c.v22 = v21 * b.v12 + v22 * b.v22;
             27         return c;
             28     }
             29 
             30     M operator*double c)
             31     {
             32         v11 *= c, v12 *= c;
             33         v21 *= c, v22 *= c;
             34         return *this;
             35     }
             36 } unit,self;
             37 
             38 
             39 M f(int t)
             40 {
             41     if (t == 0) {
             42         M a;
             43         a.v11 = 1, a.v12 = 0;
             44         a.v21 = 0, a.v22 = 1;
             45         return a;
             46     }
             47     if (t == 1) {
             48         return unit;
             49     }
             50     if (t % 2 == 0) {
             51         M tmp = f(t / 2);
             52         return tmp * tmp;
             53     }
             54     M tmp = f(t / 2);
             55     return tmp * tmp * unit;
             56 }
             57 
             58 /*
             59  f(n)      { p ,1-p }    f(n-1)   
             60  f(n-1) =  { 1 , 0  } *  f(n-2)
             61  * */
             62 int main()
             63 {
             64     int i, j;
             65     while (scanf("%d %lf"&n, &p) == 2) {
             66         unit.v11 = p, unit.v12 = 1 - p;
             67         unit.v21 = 1, unit.v22 = 0;
             68 
             69         self.v11 = 1, self.v12 = 0;
             70         self.v21 = 0, self.v22 = 1;
             71 
             72         bool flag = false;
             73         for (i = 0; i < n; i++) {
             74             scanf("%d", mine + i);
             75         }
             76         sort(mine, mine + n);
             77         n = unique(mine, mine + n) - mine;
             78         for (i = 1; i < n; i++) {
             79             if (mine[i] - mine[i - 1== 1) {
             80                 flag = true;
             81                 break;
             82             }
             83         }
             84         if (flag || mine[0== 1) {
             85             printf("%.7f\n"0.0);
             86             continue;
             87         }
             88         int t = 1;
             89         M res = self, tmp;
             90         for (i = 0; i < n; i++) {
             91             tmp = f(mine[i] - 1 - t);
             92             t = mine[i] + 1;
             93             res = res * tmp * (1 - p);
             94             res.v12 = 0//跳地雷
             95         }
             96         if(res.v11 <= 0) {
             97             printf("%.7f\n"0.0);
             98         }else {
             99             printf("%.7f\n", res.v11);
            100         }
            101     }
            102     return 0;
            103 }
            104 

            posted on 2009-08-23 18:50 schindlerlee 閱讀(1296) 評論(0)  編輯 收藏 引用 所屬分類: 解題報告

            久久99精品国产麻豆蜜芽| 久久亚洲私人国产精品vA| 国产亚洲色婷婷久久99精品91 | 亚洲午夜久久久久妓女影院| 亚洲AV无码久久精品色欲| 欧美伊香蕉久久综合类网站| 久久综合色老色| 亚洲国产精品婷婷久久| 伊人久久大香线蕉av不卡 | 青草影院天堂男人久久| 色综合久久夜色精品国产| 久久免费国产精品一区二区| 国产成人综合久久精品红| 一本大道加勒比久久综合| 久久WWW免费人成一看片| 国产精久久一区二区三区| 91视频国产91久久久| 亚洲AV无码1区2区久久| 亚洲国产精品综合久久一线 | 久久午夜伦鲁片免费无码| 色播久久人人爽人人爽人人片aV| 九九精品99久久久香蕉| 色综合久久久久久久久五月| 国产精品久久久香蕉| 理论片午午伦夜理片久久| 丁香久久婷婷国产午夜视频| 精品久久久久久综合日本| 国产成人精品久久二区二区| 中文字幕久久久久人妻| 久久久噜噜噜久久中文字幕色伊伊| 久久精品亚洲福利| 久久久久亚洲av成人无码电影| 伊人久久综合热线大杳蕉下载| 久久棈精品久久久久久噜噜| 婷婷综合久久中文字幕蜜桃三电影| 久久久久久国产a免费观看黄色大片| 久久久久婷婷| 国产香蕉久久精品综合网| 99蜜桃臀久久久欧美精品网站 | 嫩草影院久久99| 久久精品国产只有精品66|