Uva-10648-Chocolate Box
来源:互联网 发布:女生宿舍关系 知乎 编辑:程序博客网 时间:2024/05/23 01:25
这个题大意是说给你n个巧克力,要放到m个盒子里去,然后要求求出最后有一个或多个盒子为空的概率
不难推出动态转移方程式
dp[i][j]=dp[i-1][j]*j/m+dp[i-1][j-1]*(m-j+1)/m;
dp[i][j]表示前i个巧克力装到j个盒子的概率
代码:
#include<cstdio>#include<cstring>#include<iostream>using namespace std;const int maxn=101;int n,m;double dp[maxn][maxn];int main(){ int cas=1; while(scanf("%d",&n)&&(n!=-1)) {scanf("%d",&m);memset(dp,0,sizeof(dp));dp[1][1]=1;for(int i=2;i<=n;i++) for(int j=1;j<=m;j++)dp[i][j]=dp[i-1][j]*(j*1.0/m)+dp[i-1][j-1]*((m-j+1)*1.0/m);double ans=0;for(int i=1;i<m;i++) ans+=dp[n][i];printf("Case %d: %.7f\n",cas++,ans); } return 0;}
- Uva-10648-Chocolate Box
- (Relax DP1.4)UVA 10648 Chocolate Box(求将n个巧克力放在m个盒子中的概率)
- UVa 10970 - Big Chocolate
- uva 10970 Big Chocolate
- UVA 10970 - Big Chocolate
- uva 10970 - Big Chocolate
- Uva-10970-Big Chocolate
- UVA 10970 Big Chocolate
- UVA 10970 Big Chocolate
- UVa 10970 - Big Chocolate
- UVA 10970 Big Chocolate
- uva 10970 Big Chocolate
- Uva - 10970 - Big Chocolate
- uva 10970 - Big Chocolate
- uva 10970 Big Chocolate
- UVa 10970 - Big Chocolate
- UVA 10970 Big Chocolate
- uva 10970 Big Chocolate
- 分区表丢失修复与系统启动修复
- Hive基本命令(2)
- APUE_消息队列
- C++中栈结构建立和操作
- C++产生随机数
- Uva-10648-Chocolate Box
- 百练2787 nyist 43 算24
- 我的Android进阶之旅------>Android视频录制小例子
- 并查集基础概念(无图)
- Hashcode的作用
- C++记录某段程序的运行时间
- 设计模式读书笔记-----备忘录模式
- Linux Shell 编程实战技巧
- 巧用Java的Calendar & Sqlite Developer破解