HDU 4035 期望dp】的更多相关文章

题目:http://poj.org/problem?id=2096 题目好长...意思就是每次出现 x 和 y,问期望几次 x 集齐 n 种,y 集齐 s 种: 所以设 f[i][j] 表示已经有几种,转移一下即可. 代码如下: #include<cstdio> #include<cstring> #include<algorithm> using namespace std; typedef double db; ; int n,s; db f[xn][xn]; in…
这道题站在每个位置上都会有三种状态 死亡回到起点:k[i] 找到出口结束 e[i] 原地不动 p[i] k[i]+e[i]+p[i] =1; 因为只给了n-1条路把所有都连接在一起,那么我们可以自然的把这张图看成一个树型结构 根据作为父亲节点和叶子节点作为区分 进行推导 详情可参考:http://blog.csdn.net/morgan_xww/article/details/6776947/ #include <cstdio> #include <cstring> #includ…
期望DP算是第一题吧...虽然巨水但把思路理理清楚总是好的.. 题意:在一个1×n的格子上掷色子,从0点出发,掷了多少前进几步,同时有些格点直接相连,即若a,b相连,当落到a点时直接飞向b点.求走到n或超出n期望掷色子次数 SOL: 期望DP还是显然的,从后往前推也是显然的——这个题目能比较好地理解为什么要从后往前推.概率DP每个状态都在当前已知的概率下推出——最基本事件的概率往往都是已知的,而期望不同,从头开始,头的期望步数是根本不可知的,一旦遇上不可行状态极难处理,而从后往前推,最后一个状态…
http://acm.hdu.edu.cn/showproblem.php?pid=4035 获得: 1.首先推断是不是树.事实上,所有的感觉身影,既看边数==算-1是不成立 2.有时候,我告诉孩子来区分树仍然是必要的,就是,只是是在dfs的时候,传參数的时候多加个表示父节点的參数而已 3.一定注意,概率DP对精度真的要求非常高 開始的时候写1e-8,WA了好几发,改了1e-10  AC 4.注意分母为0的可能的时候加上推断 讲的非常具体的题解:http://blog.csdn.net/morg…
题意: 在一个r*c的网格中行走,在每个点分别有概率向右.向下或停止不动.每一步需要的时间为2,问从左上角走到右下角的期望时间. SOL: 非常水一个DP...(先贴个代码挖个坑 code: /*========================================================================== # Last modified: 2016-01-20 23:08 # Filename: HDU3853.cpp # Description: ====…
poj 2096 题目:http://poj.org/problem?id=2096 f[ i ][ j ] 表示收集了 i 个 n 的那个. j 个 s 的那个的期望步数. #include<cstdio> #include<cstring> #include<algorithm> #define db double using namespace std; ; db n,s,f[N][N]; int main() { scanf("%lf%lf"…
太吊了,反正我不会 /* HDU 4035 dp求期望的题. 题意: 有n个房间,由n-1条隧道连通起来,实际上就形成了一棵树, 从结点1出发,开始走,在每个结点i都有3种可能: 1.被杀死,回到结点1处(概率为ki) 2.找到出口,走出迷宫 (概率为ei) 3.和该点相连有m条边,随机走一条 求:走出迷宫所要走的边数的期望值. 设 E[i]表示在结点i处,要走出迷宫所要走的边数的期望.E[1]即为所求. 叶子结点: E[i] = ki*E[1] + ei*0 + (1-ki-ei)*(E[fa…
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4405 Aeroplane chess Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) 问题描述 Hzz loves aeroplane chess very much. The chess map contains N+1 grids labeled from 0 to N. Hzz s…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3853 题意: 有一个n*m的网格. 给出在每个格子时:留在原地.向右走一格,向下走一格的概率. 每走一格会消耗2点体力. 问你从(1,1)到达终点(n,m)消耗体力的期望. 题解: 表示状态: dp[i][j] = rest steps(剩余路程花费体力的期望) i,j:现在的位置 找出答案: ans = dp[0][0] 如何转移: 期望dp的套路:考虑子期望... now: dp[i][j] 能…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意: 有 1~n 个等级,你现在是1级,求升到n级的花费期望.会给你n个条件(i~i+1级升级所需花费,升级成功概率a/b,失败的话降为x级). 思路: 期望DP我一般不怎么会,一般都是从 dp[n] 开始转移到 dp[0] 的,但是这题是简单题,从1到n递推就行了(但是赛场是就是不会做). 我们设 dp[i] 是从 dp[i-1] 到 dp[i] 所需的花费期望值. 然后要知道有 a/b…