So you want to be a 2n-aire? Problem's Link Mean: 玩一个答题赢奖金的游戏,一开始有1块钱,玩n次,每次赢的概率为t~1之间的某个实数. 给定n和t,求最终能够获得奖金的最大期望值. analyse: 假设玩家已经答对了第i题,那么当前的奖金应该为2^i. 现在开始第i+1题,是选择放弃还是答题呢? 设答第i+1题正确的概率为p,ex[i+1]表示考虑前1~i+1题最大的收益期望. 如果p*ex[i+1]>2^i,那么肯定是选择答;否则结束游戏.…
Tribles Problem's Link: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=33059 Mean: 有k个细菌,每个细菌只能存活一天,在死去之前可能会分裂出0,1,2....n-1个细菌,对应的概率为p0,p1,p2....pn-1. 问:所有细菌在第m天全部灭亡的概率是多少?(m天以前灭亡也算在内) analyse: 由于每一个细菌的生存是独立的,所以我们可以先算出一个细菌的概率为PP,最终答案应是:P…
写完这题赶紧开新题... 话说这题让我重新翻了概率论课本,果然突击完了接着还给老师了,毫无卵用. 很多人拿这位大神的题解作引,在这我也分享给大家~ 对于其中的公式在这里做一点简要的说明.因为自己也是理解了一会儿才明白的. TIPs: 1.设d[i]为答对第i道题后拥有奖金的期望值. 2.对于第i+1道题,我们可以有两种选择:答,不答: 如果不答,那么奖金便到2i为止: 如果答,答错的话,奖金当然为0:答对的话,奖金会变为P*d[i+1](这是一个期望值,也可以说是平均值,或者可以这样理解,选择答…
题意:玩家初始的金额为1:给出n,表示有n道题目:t表示说答对一道题目的概率在t到1之间均匀分布. 每次面对一道题,可以选择结束游戏,获得当前奖金:或者回答下一道问题,答对的话奖金翻倍,答错的话结束游戏没有奖金,求玩家使用最优策略赢的奖金的期望值的最大值. 题解:遇见第(i+1)个题目的时候有两种选择:结束这个题,获得2^i的钱:回答这个题目,答对就获得2^(i+1)的钱 因此设dp[i]表示答对第i个题,面对第(i+1)个题可以获得的期望钱数,则dp[i]=2^i * 不去回答这个题的概率 +…
引用自:http://hi.baidu.com/aekdycoin/item/be20a91bb6cc3213e3f986d3,有改动 题意: 已知D, 每次从[1,D] 内的所有素数中选择一个Ni, 如果D = 0(mod Ni), 那么D /= Ni,否则D不变(可以看成是每一轮 D/= GCD(D,Ni) ) 思路: 概率DP 令 dp[ i ] 表示 D = i 的时候的期望, 即从i 转移到1 的次数期望. 我们有 p = kcnt[ i ] / cnt[ i ]; kcnt[ i ]…
题意:某个人每天晚上都玩游戏,如果第一次就䊨了就高兴的去睡觉了,否则就继续直到赢的局数的比例严格大于 p,并且他每局获胜的概率也是 p,但是你最玩 n 局,但是如果比例一直超不过 p 的话,你将不高兴的去睡觉,并且以后再也不玩了,现在问你,平均情况下他玩几个晚上游戏. 析:先假设第一天晚上就不高兴的去睡觉的概率是 q,那么有期望公式可以得到 E = q + (1-q) * (E + 1),其中 E 就是数学期望,那么可以解得 E = 1/ q,所以答案就是 1 / q,这个公式是什么意思呢,把数…
题意: 给出一些字符和各自对应的选择概率,随机选择L次后得到一个长度为L的随机字符串S. 给出K个模板串,计算S不包含任何一个模板串的概率 dp[i][j]表示走到AC自动机 i 这个节点 还需要走 j 步的概率. 表示不会概率DP ,看网上题解写的. 通过记忆化搜索去写. 注意一点字符有大小字母和数字 #include <set> #include <map> #include <stack> #include <queue> #include <c…
求概率 uva11021 http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1962 给定n,k,m 有k个麻雀,每只活一天就会死,临死之前生出i只麻雀的概率为pi ,  0<= i <n 问m天后,麻雀死光的概率 独立事件同时发生是每个事件的概率相乘, 每只麻雀都是独立的,只要求出一只麻雀m天后死亡的概率dp[m], 那么k只麻雀…
注意:在概率DP中求期望要逆着推,求概率要正着推 概率DP求期望: 链接: http://acm.hdu.edu.cn/showproblem.php?pid=4405 dp[ i ]表示从i点走到n点的期望,在正常情况下i点可以到走到i+1,i+2,i+3,i+4,i+5,i+6 点且每个点的概率都为1/6 所以dp[i]=(dp[i+1]+dp[i+2]+dp[i+3]+dp[i+4]+dp[i+5]+dp[i+6])/6  + 1(步数加一) 而对于有跳跃的点直接为dp[a]=dp[b];…
/* 大连热身D题 题意: 有n个人,m个浴室每个浴室有ai个喷头,每个人等概率得选择一个浴室. 每个浴室的人都在喷头前边排队,而且每个浴室内保证大家都尽可能均匀得在喷头后边排队. 求所有浴室中最长队伍的期望. 思路: 概率dp dp[i][j][k]代表前i个浴室有j个人最长队伍是k的概率. 枚举第i个浴室的人数.然后转移的时候其实是一个二项分布. */ #include<bits/stdc++.h> using namespace std; ]; ][][]; ][]; void init…