poj2151
求每只队伍都回答出题目,且至少有一只队伍回答出n道题的概率
存在性问题我们可以转化为任意性问题
用P(每支队伍都回答出题目)-P(每只队伍回答的题目数小于n)
然后我们可以递推求解
var f:array[..,..,..] of double;
p:array[..,..] of double;
k,i,j,n,m,t:longint;
s,ans,tmp:double; begin
while not eof do
begin
readln(n,t,m);
if (n=) and (t=) and (m=) then break;
for i:= to t do
begin
for j:= to n do
read(p[i,j]);
readln;
end;
fillchar(f,sizeof(f),);
for i:= to t do
begin
f[i,,]:=;
for j:= to n do
begin
f[i,j,]:=f[i,j-,]*(-p[i,j]);
for k:= to j do
f[i,j,k]:=f[i,j-,k-]*p[i,j]+f[i,j-,k]*(-p[i,j]); //f[i,j,k]表示第i支队前j道题答出k题的概率
end;
end;
ans:=;
for i:= to t do
ans:=ans*(-f[i,n,]);
tmp:=;
for i:= to t do
begin
s:=;
for j:= to m- do
s:=s+f[i,n,j]; //答出题目出数<n满足加法原理
tmp:=tmp*s; //每队都小于满足乘法原理
end;
ans:=ans-tmp;
writeln(ans::);
end;
end.
poj2151的更多相关文章
- 【poj2151】 Check the difficulty of problems
http://poj.org/problem?id=2151 (题目链接) 题意 T支队伍,一共M道题,第i支队伍解出第j道题的概率为p[i][j].问每支队伍至少解出1道题并且解题最多的的队伍至少解 ...
- POJ-2151 Check the difficulty of problems---概率DP好题
题目链接: https://vjudge.net/problem/POJ-2151 题目大意: ACM比赛中,共M道题,T个队,pij表示第i队解出第j题的概率 问 每队至少解出一题且冠军队至少解出N ...
- [POJ2151]Check the difficulty of problems (概率dp)
题目链接:http://poj.org/problem?id=2151 题目大意:有M个题目,T支队伍,第i个队伍做出第j个题目的概率为Pij,问每个队伍都至少做出1个题并且至少有一个队伍做出N题的概 ...
- POJ2151 动态规划
#include <iostream> #include <cstring> #include <cstdio> using namespace std; int ...
- 【POJ2151】Check the difficulty of problems
题意 某场比赛有M道问题,T支队伍,和数字N给出每支队伍解决每道问题的概率. 问这场比赛满足下面两个条件的概率 1.每支队伍至少做出一道题 2.冠军队至少做出N道题. 分析 条件2是不是可以转化为 至 ...
- [poj2151]Check the difficulty of problems概率dp
解题关键:主要就是概率的推导以及至少的转化,至少的转化是需要有前提条件的. 转移方程:$dp[i][j][k] = dp[i][j - 1][k - 1]*p + dp[i][j - 1][k]*(1 ...
- poj2151之概率DP
Check the difficulty of problems Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 4403 ...
- poj题目
poj2965 poj1753:标准的BFS+位运算优化 poj1328:线段覆盖变种,把圆对应到线段上,贪心求解 poj2109:高精度开根,二分+高精度,注意要判断答案的位数,如果按照题目给的范围 ...
- poj分类 很好很有层次感。
初期: 一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. ( ...
随机推荐
- Linux Shell删除某一个目录下的所有文件夹(保留其他文件)
#!/bin/bash direc=$(pwd) for dir2del in $direc/* ; do if [ -d $dir2del ]; then rm -rf $dir2del fi do ...
- awk实用技巧
awk '{sum+=$1} END {print "Sum = ", sum}' awk '{sum+=$1} END {print "Average = " ...
- ASP.NET中常用方法
身份证号检测: /// <summary> /// 检验身份证号是否正确 /// </summary> /// <param name="Id"> ...
- javascript 定时器使用
定时器的使用场合 setInterval() 方法,按照指定的周期(以毫秒记)来调用函数或计算表达式setInterval() 方法会不停的调用函数,知道 clearInterval() 被调用或窗口 ...
- 解决 TortoiseGit 诡异的 Bad file number 问题
http://blog.csdn.net/renfufei/article/details/41648061 问题描述 昨天,以及今天(2014-11-29),使用 TortoiseGit 时碰到了一 ...
- 使用graphics2D给图片上画字符
//读取图片BufferedImage frontImage = ImageIO.read(new File(eCardXMLConfigManager.geteCardXMLConfigManage ...
- 关于通过bindService启动的service,在unbindService后service是否继续运行的讨论
有三种情况:如果直接使用服务,则没有必要进行绑定,但是如果要使用服务里面的方法,则要进行绑定.具体的启动情况有下: 1.当启动时,单独调用bindService方法,在unbindService后,会 ...
- LInkedList集合练习
package com.java.linkedlist; import java.util.LinkedList; /* * LinkedList类的特点:查询速度慢,增删速度快. * LinkedL ...
- Hibernate报错 ** is not mapping
使用easyui+struts+hibernate 新增加一个页面功能时,总是报错,后来发现是数据库语句,不能写表名称,而是要写映射的数据库实体类名 1.struts文件修改增加action < ...
- 配置nginx支持thinkphp框架
因为nginx本身没有支持pathinfo,所以无法使用thinkphp框架,不过我们可以在配置里进行修改使其能够正常使用thinkphp. 1.修改配置支持pathinfo vi /etc/ngin ...