摘要: 题意:给定n和s,一共有s个系统和n个bug种类,每个bug只可能属于某一种bug,也只属于某一个系统。但是由于每个系统都有无限多个bug,每种bug也有无限多个,所以每次发现的bug是哪一种bug的可能性一样,属于哪个系统的可能性也一样。问平均发现多少个bug以后,每个系统都有bug被发现了,每个种类的bug都有被发现。解法:概率DP的入门题。。。。。不会T T。 设d[i][j]表示发现了i个系统的bug,j个种类的bug,要到达目标状态还需要的天数的期望。 则d[i][j]可以转化为:1、d[i][j],转化为此情况的概率是i*j / (n*s);2、d[i+1][j],概率为(... 阅读全文
posted @ 2013-10-29 18:48 Plumrain 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 对于”把一个向量v变成另一个向量v',并且v'的每一个分量都是v的各个分量的线性组合”这样的问题,一般都可以考虑用矩阵乘法来描述他们的变化关系。而用矩阵乘法的好处在于,可以使用快速幂来优化时间复杂度,将原本O(n)的递推优化到O(logn)。 解决这类问题,最简单也最常见的例子莫过于求Fibonacci数列中的第n项,比如POJ 3070Fibonacci。并且,题目已经构造好了转化矩阵,见下图。 . 注意,这样的方法只能求出最标准的Fibonacci数列的第n项,即1,1,2,3,5...如果F(0)和F(1)改变,还需要对这个等式稍做变动。这样的题,比... 阅读全文
posted @ 2013-10-29 15:21 Plumrain 阅读(824) 评论(0) 推荐(0) 编辑