传送门

每个队之间是独立的

f[i][j]表示当前队伍前i个题答对j个的概率

满足条件的概率 == 全部方案(除去答对0)的概率 - 不满足条件的概率(每个队伍答对1~n-1)

#include <cstdio>
#include <cstring>
#define N 101int m, t, n;
double sum, p1, p2, f[N][N];int main()
{int i, j, k;double x;while(~scanf("%d %d %d", &m, &t, &n) && (n + m + t)){p1 = p2 = 1;for(i = 1; i <= t; i++){memset(f, 0, sizeof(f));f[0][0] = 1;for(j = 1; j <= m; j++){scanf("%lf", &x);for(k = 0; k <= j; k++){if(k) f[j][k] += f[j - 1][k - 1] * x;f[j][k] += f[j - 1][k] * (1.0 - x);}}sum = 0;for(j = 1; j < n; j++) sum += f[m][j];p1 *= 1.0 - f[m][0];p2 *= sum;}printf("%.3lf\n", p1 - p2);}return 0;
}

  

转载于:https://www.cnblogs.com/zhenghaotian/p/7577210.html

[POJ2151]Check the difficulty of problems(概率DP)相关推荐

  1. POJ-2151 Check the difficulty of problems 概率DP

    题目链接:http://poj.org/problem?id=2151 组合数做肯定超时,容易看出是DP.f[i][j]表示某个队的前j个题目做出i个题目的概率,则f[i][j]=f[i][j-1]* ...

  2. Check the difficulty of problems (概率dp求概率)

    Check the difficulty of problems POJ - 2151 大致题意: m个问题,t个队伍,要求冠军队伍至少解决n个问题,给出每个队伍解决每个问题的概率 求每一个队至少解决 ...

  3. 【POJ - 2151】Check the difficulty of problems(概率dp)

    ​​​​题干: Organizing a programming contest is not an easy job. To avoid making the problems too diffic ...

  4. Check the difficulty of problems - poj 2151 (概率+DP)

    有 T(1<T<=1000) 支队伍和 M(0<M<=30) 个题目,已知每支队伍 i 解决每道题目 j 的的概率 p[i][j],现在问:每支队伍至少解决一道题,且解题最多的 ...

  5. POJ 2151 Check the difficulty of problems (概率dp)

    题意:给出m.t.n,接着给出t行m列,表示第i个队伍解决第j题的概率. 现在让你求:每个队伍都至少解出1题,且解出题目最多的队伍至少要解出n道题的概率是多少? 思路:求补集. 即所有队伍都解出题目的 ...

  6. poj 2151 Check the difficulty of problems

    题意:有m到题,t个队伍,给出第 i 支队作出 第 j 道题的概率 Pij.求每个队至少作出一道题,作出最多的那个队伍至少作出 n 道题的概率. dp[i][j][k]表示第 i 支队前 j 道题作出 ...

  7. 【原创】概率DP总结 by kuangbin

    概率DP主要用于求解期望.概率等题目. 转移方程有时候比较灵活. 一般求概率是正推,求期望是逆推.通过题目可以体会到这点. 首先先推荐几篇参考的论文: <信息学竞赛中概率问题求解初探> & ...

  8. 动态规划报告(树形DP+概率DP

    动态规划报告 树形dp 树形 DP,即在树上进行的 DP.由于树固有的递归性质,树形 DP 一般都是递归进行的.一般需要在遍历树的同时维护所需的信息 以一道题目为例 2022CCPC桂林站G Grou ...

  9. 2018.09.01 poj3071Football(概率dp+二进制找规律)

    传送门 概率dp简单题. 设f[i][j]表示前i轮j获胜的概率. 如果j,k能够刚好在第i轮相遇,找规律可以发现j,k满足: (j−1)>>(i−1)(j−1)>>(i−1) ...

最新文章

  1. 通过Java代码实现图片的放大和缩小
  2. linux qt 生成word,Qt 生成word、pdf文檔
  3. Source Insight 经典教程
  4. mysql insert union_在MySQL中使用INSERT INTO SELECT和UNION执行多次插入
  5. python3 判断字符串是否包含指定字符
  6. session不是线程安全的
  7. 杭电1978java实现
  8. AR/QCA SPI 启动原理和 ART 地址定位原理
  9. vs安卓开发发布_向华为的鸿蒙看齐,谷歌发布全新系统,手机电脑通用
  10. 单调栈思维 2021年度训练联盟热身训练赛第三场——K题 Summer Trip
  11. 100份Spring面试问答-最终名单(PDF下载)
  12. Unix/Linux/BSD 它们之间的关系以及各自派系的介绍
  13. 一统江湖的大前端(7)React.js-从开发者到工程师
  14. 安卓rtmp推流app_同城直播电商APP小程序平台开发
  15. 赫夫曼树的定义及原理
  16. 谷歌插件--SuperCopy(解决网页中文字不可复制的问题)
  17. Scala编程思想高清中文版PDF
  18. 《生物化学与分子生物学》----糖酵解,柠檬酸---听课笔记(十五)
  19. AssetBundle(一)——AssetBundle介绍
  20. 实分析斯坦恩中文版_如何评价Stein的实分析以及复分析翻译版本?

热门文章

  1. vector 删除指定元素_std::vector简介
  2. python 形参_python中参数总结
  3. 在Swift中使用C语言的指针
  4. C语言变量的定义包括变量存储类型和变量的什么?
  5. java中什么表示打印_在java中打印对象时会发生什么
  6. 光学模拟 Android,基于Android平台的光学字符识别应用的设计与实现
  7. addcslashes php,php addcslashes函数怎么用
  8. 怎么解决交换机端口不正常问题?
  9. 【渝粤教育】国家开放大学2018年秋季 3781-22T燃气燃烧技术与设备 参考试题
  10. game,match,competition,contest区别