随笔分类 -  acm-矩阵的运算

hdu 2157(矩阵的快速幂)
摘要:题意:容易理解.分析:如果对于矩阵的乘法懂的话,会很容易想到如何去做的,其实转化下就是关于矩阵的快速幂的求法,具体的为什么我们也不好说,自己去好好想想吧!!不过这个题目也挺坑爹的,那就是会有重边这种情况!!就是如果有一个点直接到另一个点有几条路的话只算一条!!代码实现:#include<iostream>#include<stdio.h>#include<string.h>using namespace std;struct node{ int p[25][25];};struct node suan(struct node a,struct node b, 阅读全文

posted @ 2013-05-28 23:58 后端bug开发工程师 阅读(1746) 评论(9) 推荐(1)

poj 3233(矩阵的快速幂+等比矩阵的性质)
摘要:题意:容易理解.分析:求a^1+..a^n这是矩阵乘法中关于等比矩阵的求法:|A E||0 E|其中的A为m阶矩阵,E是单位矩阵,0是零矩阵。而我们要求的是: A^1+A^2+..A^L,由等比矩阵的性质|A , 1| |A^n , 1+A^1+A^2+....+A^(n-1)| |0 , 1| 的n次方等于|0 ,1| 所以我们只需要将A矩阵扩大四倍,变成如上形式的矩阵B,然后开L+1次方就可以得到1+A^1+A^2+....+A^L。由于多了一个1,所以最后得到的答案我们还要减去1。同理我们把矩阵A变成B:|A E||0 E|然后我们就是求B的n+1次幂之后得到的矩阵为|x1 x2||x3 阅读全文

posted @ 2013-05-28 12:03 后端bug开发工程师 阅读(3721) 评论(0) 推荐(2)

矩阵乘法的题目
摘要:本来我还不想学这个算法的,因为以前从来没听说过,不过最近做AC自动机的题目时一直遇到需要用矩阵乘法来解决的题目,所以要学习下:poj 3070、poj3233 阅读全文

posted @ 2013-05-05 15:57 后端bug开发工程师 阅读(277) 评论(0) 推荐(0)

poj 3070(矩阵的乘法)
摘要:题意:就是让你求斐波拉切数列的第n项的后面四位。分析:但是n比较大,所以用数组是无法保存的,题目中已经给出了矩阵的表示方法,这是我做的第一道关于矩阵的乘法的题目,算法设置很巧妙,矩阵二分最基础也是最经典的题目,构造方法很多,由于F[n] = F[n-1] + F[n-2];|F[n] F[n-1] | | 1 1 | |F[n+1] F[n] || | * | | =|F[n-1] F[n-2] | | 1 0 | |F[n] F[n-1] |于是我们就可以得出每次相乘之后矩阵... 阅读全文

posted @ 2013-04-25 00:30 后端bug开发工程师 阅读(315) 评论(0) 推荐(0)

导航