题目大意:给定一个邻接矩阵,求1~n的边权恰好为T的路径条数
考虑当所有边权都是1的时候 那么显然邻接矩阵自乘T次之后a[1][n]就是答案
因为当边权为1的时候a[i][j]可以表示从第i个点转移到第j个点的方案数 显然这个符合矩乘的定义
现在边权最大为9 那么将一个点拆成9个 第i个点拆成的第j+1个点向第j个点连一条边权为1的边
那么i->j有一条边权为k的边等价于i向j拆成的第k个...
分类:
其他好文 时间:
2014-12-16 21:05:41
阅读次数:
147
整数幂
算法1:对实数x的n次幂设计一个有效的算法。一种直接的方法是对x用迭代方法自乘n次,这种方法十分低效,因为它需要O(n)乘法。一个高效的方法可以用如下方法推出,令m=n/2,假设已经知道如何计算x^m。那么有两种情况:如果n是偶数,那么x^n = (x^m)^2;否则x^n = x(x^m)^2。
算法2:令n的二进制表示为dn-1.....d1,d0。从y=1开始,由n的高位至地位扫...
分类:
编程语言 时间:
2014-11-23 14:33:50
阅读次数:
238
Implement pow(x,n).直接把x自乘n-1次很容易实现,时间复杂度O(n).实际上,x^n = x^(n/2) * x^(n/2), 这样只需要求一次x^(n/2),再做一次乘操作即可,T(n) = T(n/2) + c, T(n) = lbn. (参见 CLRS 主定理)同时要注意两...
分类:
其他好文 时间:
2014-11-14 19:30:22
阅读次数:
216
求A?B取模。直接二分快速幂即可。比如9?9=(9?2)?4 * 9,将B一直模2然后A自乘,复杂度long(n)。 1 #include 2 #include 3 #include 4 using namespace std; 5 6 int quickpow(int a, int b,...
分类:
其他好文 时间:
2014-10-26 11:37:12
阅读次数:
124
T1九九归一描述萌蛋在练习模n意义下的乘法时发现,总有一些数,在自乘若干次以后,会变成1。例如n=7,那么5×5 mod 7=4,4×5 mod 7=6,6×5 mod 7=2,2×5 mod 7=3,3×5 mod 7=1。如果继续乘下去,就会陷入循环当中。萌蛋还发现,这个循环的长度经常会是φ(n...
分类:
其他好文 时间:
2014-10-05 13:41:28
阅读次数:
335
T^T Saffah大神照样刷我这样诚心诚意想做一套NOIP模拟题的蒟蒻.第一题 九九归一好diao的名字...题意就是给定一队$n,q$,求在模$n$意义下一个数$x$自乘的循环节长度.当$x=0$时候输出$0$是吧............................................
分类:
其他好文 时间:
2014-10-04 22:09:57
阅读次数:
343
如果边权都是1,那么直接对当前的邻接矩阵进行T次自乘,答案就是D[1][n]了。证明:当进行1次自乘时,\(D^{1}_{i,j}\)显然代表从i到j的长度为1的路径条数。假设\(D^{k}_{i,j}\)表示从i到j长度为k的路径条数,那么\(D^{k + 1} = D^{k} \times D\...
分类:
其他好文 时间:
2014-07-30 17:21:44
阅读次数:
190
上得厅堂,下得厨房,写得代码,翻得围墙,欢迎来到睿不可挡的每日一小练!题目:数值自乘递归解内容:假设一个n与m是正整数,那么m^n就是把m连乘n次,这是一个非常没有效率的方法。试试编写一个更有效率的程序,应该以少量n-1个乘法作为设计标准。我的解法:上来没多想,打开vs2013就敲了起来,问题果然非...
分类:
其他好文 时间:
2014-06-02 00:57:02
阅读次数:
294
上得厅堂,下得厨房,写得代码,翻得围墙,欢迎来到睿不可挡的每日一小练!...
分类:
其他好文 时间:
2014-05-22 08:32:25
阅读次数:
270
上得厅堂,下得厨房,写得代码,翻得围墙,欢迎来到睿不可挡的每日一小练!...
分类:
其他好文 时间:
2014-05-21 14:40:19
阅读次数:
232