题目: Description YYF is a couragous scout. Now he is on a dangerous mission which is to penetrate into the enemy's base. After overcoming a series difficulties, YYF is now at the start of enemy's famous "mine road". This is a very long road, on w…
题目大意: 输入n,代表一位童子兵要穿过一条路,路上有些地方放着n个地雷(1<=n<=10).再输入p,代表这位童子兵非常好玩,走路一蹦一跳的.每次他在 i 位置有 p 的概率走一步到 i+1 ,或者 (1-p) 的概率跳一步到 i+2.输入n个数,代表n个地雷的位置(1<=n<=100000000),童子兵初始在1位置,求他安全通过这条道路的概率. 基本思路: 如果k 号位有雷,那么安全通过这个雷只可能是在 k-1 号位选择走两步到 k+1 号位.因此,可以得到如下结论:在第 i…
http://poj.org/problem?id=3744 题意: 现在有个屌丝要穿越一个雷区,雷分布在一条直线上,但是分布的范围很大,现在这个屌丝从1出发,p的概率往前走1步,1-p的概率往前走2步,求最后顺利通过雷区的概率. 思路: 首先很容易能得到一个递推式:$dp[i]=p*dp[i-1]+(1-p)*dp[i-2]$.但是直接递推肯定不行,然后我们发现这个很容易构造出矩阵来,但是这样还是太慢. 接下来讲一下如何优化,对于第i个雷,它的坐标为x[i],那么那顺利通过它的话,只能在x[i…
题意:在一条不满地雷的路上,你现在的起点在1处.在N个点处布有地雷,1<=N<=10.地雷点的坐标范围:[1,100000000]. 每次前进p的概率前进一步,1-p的概率前进1-p步.问顺利通过这条路的概率.就是不要走到有地雷的地方.   设dp[i]表示到达i点的概率,则 初始值 dp[1]=1. 很容易想到转移方程: dp[i]=p*dp[i-1]+(1-p)*dp[i-2]; 但是由于坐标的范围很大,直接这样求是不行的,而且当中的某些点还存在地雷.   N个有地雷的点的坐标为 x[1]…
传送门 矩阵快速幂优化dp简单题. 考虑状态转移方程: f[time][u]=∑f[time−1][v]f[time][u]=\sum f[time-1][v]f[time][u]=∑f[time−1][v] 把一个点拆成9个来转换边长,然后根据题意模拟连边就行了. 最后用矩阵快速幂优化一下转移就能过啦. 代码: #include<bits/stdc++.h> using namespace std; int n,t,m; char s[50]; const int mod=2009; str…
实际上是水水题叻,先把朴素DP方程写出来,发现$dp[i]$实际上是$dp[i-k]-dp[i-1]$的和,而看数据范围,我们实际上是要快速地求得这段的和,突然就意识到是矩阵快速幂叻. 构建矩阵什么的还是很简单滴,主要就是练一练手. (还有就是水一水blog!换个字体,换个心情! (快速乘是在模数很大时要用,避免超long long #include<bits/stdc++.h> using namespace std; #define LL long long #define mod 777…
题面 [错解] 哎\(N \leq 50\)?双向搜索? 切了切-- 等下,好像要求方案数-- 好像搜不了 哎他给\(V_{i} | V_{i+1}\)干嘛? 肯定有用啊 为了体现条件的用处,我在搜下一步时把后面的和S除以当前值 但还是T了啊 写了个\(O(NW^{2})\)的完全背包水水,瞎搞了个神奇算法,揉在一起,成功爆零 [正解] 设\(f_{t,i,j}\)表示选的硬币编号最大为i,最小大于等于j的凑出t的方案数 这样可以完整地表示出\(f_{t,i,j}=\sum f_{t_{1},i…
CRB and Puzzle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 558    Accepted Submission(s): 227 Problem Description CRB is now playing Jigsaw Puzzle.There are N kinds of pieces with infinite s…
Discription DarrellDarrellDarrell 在思考一道计算题. 给你一个尺寸为 1×N1 × N1×N 的长条,你可以在上面切很多刀,要求竖直地切并且且完后每块的长度都是整数. 在这种限制下其实只有 N−1N − 1N−1 个位置可以切. 对于一种切的方案,假如切完后每块的宽度分别是:w1,w2,w3,...,wk(∑wi=N)w_1, w_2, w_3, ..., w_k(\sum w_i = N)w1​,w2​,w3​,...,wk​(∑wi​=N),那么该种方案对应…
题意 : 给出一些病毒串,问你由ATGC构成的长度为 n 且不包含这些病毒串的个数有多少个 分析 : 这题搞了我真特么久啊,首先你需要知道的前置技能包括 AC自动机.构建Trie图.矩阵快速幂,其中矩阵快速幂和AC自动机可能都熟悉,但是这题为什么和矩阵有关系?Trie图是什么呢?好像只听说过Trie树啊!下面我慢慢展开,首先声明本人水平实在实在有限,理解错误的地方请批评指证,万分感激! 与矩阵的联系( 你可能需要百度.... ) ==> 解决此题就要先了解到如何用矩阵去解决 求从A点到B点刚好经…