POJ 2096 Collecting Bugs (概率DP入门)

原创 2015年07月10日 23:32:01

今天看了kuangbin博客里的概率DP总结http://www.cnblogs.com/kuangbin/archive/2012/10/02/2710606.html

开始的一句话感觉很有道理(概率正推,期望逆推)【不过谁能给我详细讲一下,现在只是感觉上很有道理


设dp[i][j]为已找到i种bug和j个subconponent后到达目标的期望。

那么dp[i][j] 可以转化成四种状态:

dp[i][j] + 1  概率:i*j / n / s

dp[i+1][j] + 1 概率: (n-i)*j / n / s

dp[i][j+1] + 1 概率:i*(s-j) / n / s

dp[i+1][j+!] + 1 概率: (n-i)*(s-j) / n / s


代码:

#include<cstdio>
#include<iostream>

using namespace std;
const int maxn = 1005;

int n,s;
double dp[maxn][maxn];

int main(){
    scanf("%d%d",&n,&s);
    for(int i = n ;i >= 0; i--){
        for(int j = s; j >= 0; j--){
            if(i == n && j == s) continue;
            dp[i][j] = (n*s + (n-i)*j*dp[i+1][j] + i*(s-j)*dp[i][j+1] + (n-i)*(s-j)*dp[i+1][j+1]) / (n*s - i*j);
        }
    }
    printf("%.4f\n",dp[0][0]);
    return 0;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

POJ 2096 Collecting Bugs 概率dp 求期望 入门

题意: 一个人很喜欢去发现bug。每一天能

POJ 2096 Collecting Bugs(概率dp)

Language: Default Collecting Bugs Time Limit: 10000MS   Memory Limit: 64000K Tot...

[poj 2096]Collecting Bugs 概率DP

Collecting Bugs Time Limit: 10000MS Memory Limit: 64000K Total Submissions: 4767 Accepted:...

poj 2096 Collecting Bugs(概率dp)

题意:Ivan每天能找到一个bug,现在有一个工程,有n种bug,s个子系统。问在这个工程中找出n种bug并且每个子系统至少有1个bug的天数的期望是多少。 思路:用dp[i][j]表示当前找出了i...
  • qian99
  • qian99
  • 2014年03月17日 19:45
  • 443

POJ 2096 Collecting Bugs (概率dp)

POJ 2096 Collecting Bugs (概率dp)

POJ 2096 Collecting Bugs (概率DP)

Collecting Bugs Time Limit: 10000MS   Memory Limit: 64000K Total Submissions: 4038   Accepted:...

POJ 2096 Collecting Bugs 详细题解(概率DP求期望)

Collecting Bugs Time Limit: 10000MS   Memory Limit: 64000K Total Submissions: 5302 ...

POJ 2096 Collecting Bugs 马尔可夫链 概率DP

AC自动机的专题刷完了...开始刷概率了... 题目大意: 就是现在要从一个软件中找出bug, 这个软件有s个子模块,一共有n种bug,现在每天你可以找到一个bug, 这个bug属于任何一...

poj 2096 Collecting Bugs【概率dp 逆向求期望】

Collecting Bugs Time Limit: 10000MS   Memory Limit: 64000K Total Submissions: 3523 ...
  • Bcwan_
  • Bcwan_
  • 2016年10月03日 22:58
  • 120

POJ 2096 Collecting Bugs [概率DP]

Ivan is fond of collecting. —— 给出N,S,表示bug有N类,被包含在S个子系统中,现在来debug,每一天你会发现一个bug,等概率的属于其中一类,以及其中一个子系统...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:POJ 2096 Collecting Bugs (概率DP入门)
举报原因:
原因补充:

(最多只允许输入30个字)