
矩阵
M_Lter
这个作者很懒,什么都没留下…
展开
-
CodeForces - 450B Jzzhu and Sequences
题目链接给定前两个值x,y,根据递推式求第n项的值。 ==》 即递推式整理为f(n)=f(n-1)-f(n-2) ,n>=2,因为数大,用快速矩阵幂求解,套模板即可#include<iostream>#include<cstdio>#include<cstring>using namespace std;typedef l...原创 2018-08-07 13:06:54 · 152 阅读 · 0 评论 -
UVA - 1386 Cellular Automaton
题目链接n个数组成环,每次取每个数及其左右d个距离内的所有数的求和,再对m取模之后作为新值,问你k次操作后每个数是多少。当d=1时构造矩阵: ,可知是个循环矩阵,行和列相同,只需第一行或者第一列就可得整个矩阵。#include<cstdio>#include<cstring>#include<algorithm>using names...原创 2018-08-13 13:39:46 · 164 阅读 · 0 评论 -
UVA - 10655 Contemplation! Algebra
题目链接给定a+b,a*b和n,要求的值。要通过a+b和a*b求a和b,再求n次方和,显然不是很容易,我们进行转换:即转换成递推式,再利用矩阵快速幂求解即可。#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using nam...原创 2018-08-13 07:42:33 · 156 阅读 · 0 评论 -
UVA - 11149 Power of Matrix
题目链接给定n*n的矩阵A和k,求 ,直接在矩阵快速幂模板上加个手写的add函数会超时,过程中有重复计算,使用二分法:将式子转变成 即 如果n是奇数,答案还要加上。这题要注意格式说明,每行没有多余的空格!#include<iostream>#include<cstdio>#include<cstring&g...原创 2018-08-12 22:59:09 · 140 阅读 · 0 评论 -
UVA - 10689 Yet another Number Sequence
题目链接简单的矩阵快速幂问题,取n的最后m位数字即为模取10的m次方。#include<iostream>#include<cstdio>#include<cstring>using namespace std;typedef long long ll;//const ll mod=1e9+7;ll mod;struct matrix{...原创 2018-08-12 22:04:21 · 173 阅读 · 0 评论 -
UVA - 11651 Krypton Number System
题目链接寻找状态转移方程,题解参考处#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using namespace std;typedef unsigned long long ull;const ull mod=(1ull&...原创 2018-08-12 12:46:40 · 178 阅读 · 0 评论 -
UVA - 11551 Experienced Endeavour
题目链接给n个数,r次操作,算出n个数最后的值。样例分析:1 2 是两个值,2 0 1表示第一个数由来是有两个操作,就是由下标为0,1(即所给的初始值1 2)求和构成,同理1 1表示第二个数由来是有一个操作,即由下标为1(即所给的初始值2)构成,然后得出的值作为下一次操作的初始值继续操作。可转为矩阵进行求r次快速幂再和初始矩阵乘积即可。样例1就为: ==》 ==>求解 ...原创 2018-08-12 10:26:36 · 176 阅读 · 0 评论 -
HDU - 4965 Fast Matrix Calculation
题目链接计算 ,并将M中每个元素对6取余再求和。因为 ,n太大,直接对A*B形成的矩阵快速幂会暴时爆内存,但可对k*k进行矩阵快速幂。将矩阵形式转变成: ,对B*A形成的矩阵快速幂即可。#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>usi...原创 2018-08-12 08:44:36 · 146 阅读 · 0 评论 -
HDU-4990 Reading comprehension
题目链接根据题目给的代码可以打表得出一些数据,再用高斯消元得出递推式题目解法类似于hdu 6198#include<iostream>#include<cstdio>#include<cstring>using namespace std;typedef long long ll;//const ll mod=1e9+7;ll mod;...原创 2018-08-07 16:09:35 · 219 阅读 · 0 评论 -
hdu 6198 number number number
题目链接题目给定斐波那契数列递推公式F(n),要找出不满足k个F(i)(0<=i<=k)之和等于任意整数的n值是多少。先暴力打表:#include<cstdio>#include<cstring>#include<algorithm>using namespace std;typedef long long ll;const ...原创 2018-07-17 10:43:06 · 198 阅读 · 0 评论 -
hdu 6185 Covering
题目链接看到题就想起以前做过的类似多米诺骨牌相关的题目,想着应该是有递推式的,菜鸟的我就开始画图,画到废了废了,之后借助网上大佬博客的递推演算: 行数为4当n=2时,方案数为5;当n>2时,方案数可由5种情况组合: 第一种情况(第一列填充满): num1=f[n-1]; 第二种情况(前两列填充满): num2=f[n-2]; 第三种情况(根据列填充满判...原创 2018-07-15 02:30:14 · 141 阅读 · 0 评论 -
HDU-5015 233 Matrix
题目链接给定n,m和n个第一列的数,根据题目给的关系求。第一列元素: 转化为: 第二列元素: ,把每行加的3看作前一列最后一行的3*1构成,所以根据递推关系可得矩阵A:再利用矩阵快速幂求解即可#include<cstdio>#include<cstring>#include<cmath>#include<a...原创 2018-08-07 15:23:14 · 145 阅读 · 0 评论 -
UVA - 10870 Recurrences
题目链接给定递推式,也给出系数数组和递推式前d项,直接套矩阵快速幂模板即可。#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using namespace std;typedef long long ll;ll N,mod;struct m...原创 2018-08-13 14:18:51 · 107 阅读 · 0 评论