题目描述:http://poj.org/problem?id=3744
很容易看出递推公式:dp[i] = p*dp[i-1] + (1-p)*dp[i-2],鉴于有雷的地方要特殊处理
看了这篇blog,才知道要用矩阵和快速幂 http://www.cnblogs.com/kuangbin/archive/2012/10/02/2710586.html
后来又看到讨论里有人说有公式,才想起来组合数学刚刚学了递推公式,靠!这么明显竟然没看出来
很快算出:hn = (1 - pow(p-1,n+1))/(2 - p),n从0开始
又看到有人说:“根据递推公式观察数据发现,超过步数100以后的概率几乎等于一个和p有关的常数”
经实践验证发现确实也是(题目所给p的范围是0.25~0.75),但不知是怎么推出来的
还有,用qsort会超时,用sort是0MS,这是为什么?

本文解析了POJ 3744题目的求解思路,介绍了如何利用递推公式进行问题转化,并通过矩阵快速幂的方法解决递归效率问题。文中还提到了一种直接计算公式的方法,并探讨了当步数足够大时概率趋于常数的现象。
137

被折叠的 条评论
为什么被折叠?



