

- #include
- using namespace std;
- int w,b;
- double f[1010][1010];
-
- int main(){
- scanf("%d%d",&w,&b);
- for(int i=1;i<=b;i++)f[0][i]=0;
- for(int i=1;i<=w;i++)f[i][0]=1;
-
- for(int i=1;i<=w;i++){//枚举白鼠
- for(int j=1;j<=b;j++){//枚举黑鼠
- f[i][j]+=(double)i/(i+j);
- if(i>=1&&j>=2){//防止越界
- f[i][j]+=(double)j/(i+j)*(j-1)/(i+j-1)*i/(i+j-2)*f[i-1][j-2];
- }
- if(j>=3){
- f[i][j]+=(double)j/(i+j)*(j-1)/(i+j-1)*(j-2)/(i+j-2)*f[i][j-3];
- }
- }
- }
- printf("%.9lf\n",f[w][b]);
- return 0;
- }


- #include
- using namespace std;
- double p[130][130];
- double f[0][130];
-
- int main(){
- int n;
- while(scanf("%d",&n),n!=-1){
- int m=1<
//2的n次方 - for(int i=0;i
- for(int j=0;j
- scanf("%lf",&p[i][j]);
- }
- }
- memset(f,0,sizeof(f));
- for(int i=0;i
0][i]=1;//第0轮所有球队均胜 -
- for(int i=1;i<=n;i++){//第i轮
- for(int j=0;j
//第j队 - for(int k=0;k
//对手队 - if(((j>>(i-1))^1)==(k>>(i-1))){
- f[i][j]+=f[i-1][j]*f[i-1][k]*p[j][k];
- }
- }
- }
- }
- int ans;double mx=0;
- for(int i=0;i
- if(f[n][i]>mx)ans=i,mx=f[n][i];
- }
- printf("%d\n",ans+1);
- }
- return 0;
- }
-
相关阅读:
Java刷题面试系列习题(二)
systemverilog function的一点小case
思科交换设备安全配置命令
git patch 合入patch
Go语言——快速使用Markdown解析库
面了一个00后测试工程师,问啥啥不会开口就要15k,我也是麻了····
`Algorithm-Solution` `AcWing` 920. 最优乘车
面试系列 - Java内存泄漏问题排查
淘宝销量展示方式变更背后的逻辑
JVM 中对象的创建过程
-
原文地址:https://blog.csdn.net/lmessi10_/article/details/136513581