矩阵乘法
TSOI_Vergil
这个作者很懒,什么都没留下…
展开
-
BZOJ 1297 矩阵乘法
这道题的意思是给出一张有向带权图,求出两点间路径长度为T的路径条数。首先我们先考虑权值全部为1的情况,当权值全部为1时,答案即为该图邻接矩阵的T次幂,证明大概与Floyad的证明类似,利用乘法原理,因为i和j连通,f[i][j]就等于1,而做一次矩阵乘法就意味着走了1步的方案数,而等于f[i][j]=0的情况,在矩阵乘法中对答案没有影响。而这道题边的权值比较小,因此我们可以间一条边权不为1的边进行原创 2016-08-18 17:01:00 · 272 阅读 · 0 评论 -
BZOJ 1009 DP+矩阵乘法
首先看到这道题,考虑DP,最容易想到的状态是令f[i]为准考证为i位数,满足条件的方案数,但是由于这个状态太简单,我们由这个状态知道的信息太少,因此我们考虑换一个状态,看到这道题我们容易想到KMP,因为它要求准考证号的这个字符串中不能含有不吉利数字的字符串,那么我们考虑一种状态为f[i][j],表示准考证为i位数,不吉利的字符串匹配到了j位,满足条件的方案数。那么转移就为f[i][j]-->f[i原创 2016-08-18 17:07:40 · 244 阅读 · 0 评论 -
斐波那契数列 打表+矩阵快速幂
题意:定义一个函数G(x),G(x)=F(F(x)),其中F(x)为斐波那契数列的第X项,F(0)=F(1)=1。给定x求G(x)。答案模1e9+7。x 我们可以知道,在x很大的情况下,在模意义下斐波那契会出现循环,我们可以写一个打表程序判断循环节,发现是每2*1e9+16个数循环。这样我们可以求出F(x)在x #include#include#inc原创 2016-10-01 20:26:22 · 1912 阅读 · 0 评论