lightoj 1248 Dice (III)
2016-05-20 15:55
190 查看
题意:给一个质地均匀的n的骰子, 求投掷出所有点数至少一次的期望次数。
思路:投掷出第一个未出现的点数的概率为p1=n/n = 1, 因为第一次投掷必然是未出现的。
第二个未出现的点数第一次出现的概率为 p2=(n - 1) / n,因为有一个已经投掷出现过。
第i个未出现的点数第一次出现的概率为pi=(n - (i-1)) / n, 这满足几何分布。
几何分布期望E = 1/p
所以期望为E=1/p1+1/p2+1/p3+...+1/pn=n*(1+1/2+1/3+...+1/n)
参考博客:http://www.cnblogs.com/hfc-xx/p/4740781.html
思路:投掷出第一个未出现的点数的概率为p1=n/n = 1, 因为第一次投掷必然是未出现的。
第二个未出现的点数第一次出现的概率为 p2=(n - 1) / n,因为有一个已经投掷出现过。
第i个未出现的点数第一次出现的概率为pi=(n - (i-1)) / n, 这满足几何分布。
几何分布期望E = 1/p
所以期望为E=1/p1+1/p2+1/p3+...+1/pn=n*(1+1/2+1/3+...+1/n)
参考博客:http://www.cnblogs.com/hfc-xx/p/4740781.html
#include<iostream> #include<cstdio> using namespace std; int n,t,k=1; double dp[100005]; int main() { cin>>t; while(t--) { cin>>n; dp =0; for(int i=n-1; i>=0; i--) dp[i]=dp[i+1]+(double)n/(i+1); printf("Case %d: %.10lf\n",k++,dp[0]); } return 0; }
相关文章推荐
- iOS Keychain (钥匙串)简单封装
- onWindowFocusChanged
- StaticBatchingUtility.Combine Not Working
- 实习入职第二天:Handler.removeMessages的作用
- angularjs学习记录--tab选项卡效果
- 最长不下降子序列
- 逆序对
- 二叉堆
- USACO 2016 JAN——Angry Cows套题的解题报告
- 2009南海区集训队初中选拔题1的解题报告
- 2016.3.13的解题报告
- 全排列
- 2016.3.20的解题报告
- 【编程技巧】——加快cin的输入速度
- 【编程技巧】——对拍
- RMQ
- 【编程技巧】——计算时间
- 2016GDOI市选拔赛解题报告
- 【转载】胜者树
- 【转载】计算几何中的精度问题(转)