码迷,mamicode.com
首页 > 其他好文 > 详细

概率 dp lightoj 1395

时间:2019-09-30 21:33:21      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:int   mic   ++   color   using   pre   eof   can   include   

技术图片

 

 dp[k]用类似于低配版的这道题的做法求出,如下;

技术图片

 

 然后就从k逆推到0就好了

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 const int MX = 105;
 4 double dp[MX];
 5 int x[MX];
 6 int main(){
 7     int T,n,k;
 8     scanf("%d",&T);
 9     for(int cas=1;cas<=T;cas++){
10         memset(dp,0,sizeof(dp));
11         scanf("%d%d",&n,&k);
12         int a=0,b;
13         double sum1=0,sum2=0;
14         for(int i=0;i<n;i++) {
15             scanf("%d",&x[i]);
16             if(x[i]>0) {sum1+=x[i];a++;}
17             else sum2+=abs(x[i]);
18         }
19         if(a==0){
20             printf("Case %d: -1\n",cas);
21             continue;
22         }
23         b=n-a;
24         if(a) sum1/=a;
25         if(b) sum2/=b;
26         k=min(k,b);
27         dp[k]=sum1+(b-k)*sum2/a;
28         for(int i=k-1;i>=0;i--){
29             dp[i]=(dp[i+1]+sum2)*(b-i);
30             dp[i]+=sum1*a;
31             dp[i]/=n-i;
32         }
33         printf("Case %d: %.7f\n",cas,dp[0]);
34     }
35     return 0;
36 }

 

概率 dp lightoj 1395

标签:int   mic   ++   color   using   pre   eof   can   include   

原文地址:https://www.cnblogs.com/pangbi/p/11613992.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!