UVA - 557 Burger
来源:互联网 发布:什么拳实战最厉害知乎 编辑:程序博客网 时间:2024/05/21 22:56
题目大意:给定2n个人,有n个汉堡和n个 奶酪汉堡,Ben and Bill排在最后,然后抛硬币,正反面分别拿汉堡和奶酪汉堡,如果有一样拿完了就不需要在扔硬币了。求最后ben和bill拿到一样的概率
解题思路:这题直接算的话比较麻烦,因为不知道从第几个开始停止抛硬币。反过来算他们俩得到不同面包的概率比较简单。这样硬币就会从头抛到尾。所有的情况就是C(n/2 - 1, n - 2),就是把n/2 - 1的面包分给前n-2个孩纸。没种情况是概率就是(0.5^n-2),所以a[n]=C(n/2 - 1, n - 2)*(0.5^n-2)=C(n/2 - 1, n - 2)*(2^2-n).
因为n最大为100000,直接算会超出范围,一边乘一边除也不行。所以要推导一下递归公式:
#include <cstdio>int main() {double A[100010];A[2] = 1;for (int i = 4; i <= 100000; i += 2)A[i] = A[i - 2] * (i - 3) / (i - 2);int n;scanf("%*d");while (scanf("%d", &n) != EOF)printf("%.4lf\n", 1 - A[n]);return 0;}
0 0
- uva 557 - Burger
- UVa 557 - Burger
- uva 557 Burger
- UVa 557 - Burger
- UVa 557 - Burger (概率)
- UVa 557 - Burger
- UVA - 557 Burger
- UVA 557(p344)----Burger
- uva 557 Burger
- uva 557 - Burger(概率)
- UVA 557 Burger (数学)
- UVA - 557 Burger 排列组合 概率
- Burger - UVa 557 概率dp
- UVA 557 - Burger(概率 递推)
- 习题10-12 UVA - 557 Burger 汉堡
- UVa 11661 - Burger Time?
- Uva 557 – Burger (log(x)应用 , 组合数学)
- Burger - UVa 557 滚动数组 暴力 递推 打表
- spring 中四种注解@controller,@service,@repository,@component的区别
- servlet基础梳理(二)
- Robotium 5.0.1 源码解析之滚动原理
- 【黑马程序员】iOS学习之路——C语言之数据的基本运算
- Access中保留关键字汇总
- UVA - 557 Burger
- Robotium 5.0.1 源码解析之控件搜索
- 【LeetCode】Excel Sheet Column Title
- 新的开始
- android意图传参返回结果(六)
- ios-day12-03(ios开发中数据存储之偏好设置(Preference))
- Java 中 this 的使用
- STL中优先队列的使用
- Poj 2318 toys (计算几何,叉积)