• <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>
            posts - 100,  comments - 15,  trackbacks - 0
            //解釋轉的~~~~~~
            『題目大意』
            一次比賽中,共M道題,T個隊,p[i][j]表示隊i解出題j的概率;問每隊至少解出一題且

            冠軍隊至少解出N道題的概率。

            『算法』
            設a[i][j][k]表示第i隊在前j道題中共解出k道題的概率,易得a[i][j][k]有如下遞推
            關系(另需考慮邊界條件):

            a[i][j][k] = a[i][j-1][k-1] * p[i][j] + a[i][j-1][k] * (1-p[i][j])

            設s[i][j]表示a[i][M][0] + a[i][M][1] + ... + a[i][M][j]

            問題的解可以轉化為:每隊均至少做一題的概率(用P1表示)減去每隊做題數均在1到N-1

            之間的概率(用P2表示)。

            P1 = (s[1][M] - s[1][0])*(s[2][M]-s[2][0])*...*(s[T][M]-s[T][0])
            P2 = (s[1][N-1] - s[1][0])*(s[2][N-1]-s[2][0])*...*(s[T][N-1]-s[T][0])

            『算法復雜度』
            O(T*M^2)

            『說明』
            感謝UESTC的zhucheng在poj的提示!

            #include<iostream>
            using namespace std;
            #define MM 30
            #define MT 1000

            double p[MT+1][MM+1];
            double d[MT+1][MM+1][MM+1];
            double MTO[MT+1]; //每隊至少做出一題的概率
            double LTN[MT+1];//少于N道,亦即1N-1

            int main()
            {
                
            int i,j,k;
                
            int M,T,N;
                
            double tmp1,tmp2;
                
            while(scanf("%d%d%d",&M,&T,&N)!=EOF && M)
                
            {
                    memset(MTO,
            0,sizeof(MTO));
                    memset(LTN,
            0,sizeof(LTN));
                    
            for(i=1;i<=T;i++)
                        
            for(j=1;j<=M;j++)
                            scanf(
            "%lf",&p[i][j]);
                    
            for(i=1;i<=T;i++)
                    
            {
                        d[i][
            0][0]=1;
                        
            for(j=1;j<=M;j++)
                        
            {
                            d[i][j][
            0= d[i][j-1][0]*(1-p[i][j]);
                            
            for(k=1;k<=M;k++)
                                d[i][j][k]
            =p[i][j]*d[i][j-1][k-1]+(1-p[i][j])*d[i][j-1][k];
                        }

                    }

                    tmp1
            =tmp2=1.0;
                    
            for(i=1;i<=T;tmp1*=MTO[i],i++)
                        
            for(k=1;k<=M;k++)
                            MTO[i]
            +=d[i][M][k];
                    
            for(i=1;i<=T;tmp2*=LTN[i],i++)
                        
            for(k=1;k<N;k++)
                            LTN[i]
            +=d[i][M][k];
                    printf(
            "%.3lf\n",tmp1-tmp2);
                }


                
            return 0;
            }

            附上discuss上一組數據:
            10 20 10
            0.1 0.9 0.8 1 0.9 0.8 1 0.9 0.8 0.2
            1 0.9 0.8 1 0.9 0.8 1 0.9 0.8 0.8
            0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.7
            0.2 0.23 0.56 0.2 0.23 0.56 0.2 0.23 0.56 0.88
            0.56 0.2 0.23 0.56 0.88 0.56 0.2 0.23 0.56 0.88
            0.37 0.99 0.12 0.82 0.47 0.37 0.99 0.12 0.82 0.47
            0.82 0.47 0.37 0.99 0.12 0.82 0.47 0.37 0.99 0.12
            0.37 0.99 0.12 0.82 0.472 0.373 0.99 0.12 0.82 0.47
            0.472 0.373 0.99 0.12 0.82 0.472 0.373 0.99 0.12 0.82
            0.1 0.9 0.8 1 0.9 0.8 1 0.9 0.8 0.2
            1 0.9 0.8 1 0.9 0.8 1 0.9 0.8 0.8
            0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.7
            0.2 0.23 0.56 0.2 0.23 0.56 0.2 0.23 0.56 0.88
            0.56 0.2 0.23 0.56 0.88 0.56 0.2 0.23 0.56 0.88
            0.37 0.99 0.12 0.82 0.47 0.37 0.99 0.12 0.82 0.47
            0.82 0.47 0.37 0.99 0.12 0.82 0.47 0.37 0.99 0.12
            0.37 0.99 0.12 0.82 0.472 0.373 0.99 0.12 0.82 0.47
            0.472 0.373 0.99 0.12 0.82 0.472 0.373 0.99 0.12 0.82
            0.56 0.88 0.56 0.2 0.23 0.373 0.99 0.12 0.82 0.472
            0.472 0.373 0.99 0.12 0.82 0.82 0.472 0.373 0.99 0.33

            結果:0.740
            posted on 2009-07-19 17:13 wyiu 閱讀(457) 評論(1)  編輯 收藏 引用 所屬分類: POJ
            久久精品国产色蜜蜜麻豆| 久久久久亚洲AV成人网人人软件| 99久久夜色精品国产网站 | 99精品久久久久中文字幕| 久久99国产精品一区二区| 久久久久无码精品国产app| 一本色道久久综合亚洲精品| 大香网伊人久久综合网2020| 2021国内精品久久久久久影院| 久久99热国产这有精品| 色妞色综合久久夜夜| 久久国产精品波多野结衣AV| 久久免费的精品国产V∧| 亚洲国产成人久久综合区| 亚洲成人精品久久| 久久99国产精品二区不卡| 亚洲精品tv久久久久| 国产精品VIDEOSSEX久久发布| 性欧美大战久久久久久久久 | 高清免费久久午夜精品| 欧美日韩久久中文字幕| 欧美亚洲另类久久综合婷婷| av无码久久久久不卡免费网站| 精产国品久久一二三产区区别| 久久性生大片免费观看性| 久久国产精品-久久精品| 久久国产精品久久久| 蜜臀av性久久久久蜜臀aⅴ| 色综合久久最新中文字幕| 一本久久精品一区二区| 国产精品亚洲综合专区片高清久久久| 一本色道久久88—综合亚洲精品| 久久久午夜精品| 狠狠色婷婷久久综合频道日韩| 久久久午夜精品福利内容| 狠狠精品久久久无码中文字幕| 伊人久久综合成人网| 久久亚洲欧美国产精品| 久久青青草原国产精品免费| 女人香蕉久久**毛片精品| 久久精品国产国产精品四凭|