矩阵
文章平均质量分 84
里阿奴摩西
这个作者很懒,什么都没留下…
展开
-
[DP 矩阵快速幂] BZOJ 1875 [SDOI2009]HH去散步
一个DP用矩阵快速幂加速然后这个DP状态比较巧妙 以边作状态#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (原创 2016-05-08 12:47:59 · 456 阅读 · 0 评论 -
[矩阵乘法转图论 强连通] Codeforces 403C #236 (Div. 1) C. Strictly Positive Matrix
考虑矩阵乘法在图论下的意义 Aki,j>0A^k_{i,j}>0意味着ii到jj存在长度为kk的路径 我们考虑两两之间都有路径 那么必定是一整个强连通分量 这是必要性 因为至少有子环 当kk足够大时 肯定能够成立 这是充分性#include<cstdio>#include<cstdlib>#include<algorithm>#define read(x) scanf("%d",&(x原创 2017-03-14 10:58:54 · 599 阅读 · 0 评论 -
[矩阵 点分治] BZOJ 4623 Styx
首先我们可以发现g=(x∗ϕ)∗1=(ϕ∗1)∗x=x∗xg=(x*\phi)*1=(\phi*1)*x=x*x 所以 g(n)=n∗d0(n)g(n)=n*d_0(n) 其中 d0(n)d_0(n) 表示nn的约数个数 然后就是树上的问题了 我们知道叉乘不满足结合律 打完之后才知道 汗 但是满足反交换律 然后我们就可以把叉乘表示成矩阵的形式 这是有结合律的 然后就是卡常历程 最后几乎就是照原创 2017-03-17 20:37:13 · 438 阅读 · 0 评论 -
[随机化 矩阵乘法] BZOJ 2396 神奇的矩阵 & 51Nod 1140 矩阵相乘结果的判断 & POJ 3318 Matrix Multiplication
不说了 经典#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p原创 2016-11-17 07:50:05 · 490 阅读 · 0 评论 -
[矩阵快速幂 数学] UR #16 A.破坏发射台
其实那个不考虑对角是可以手推的考虑对角只能dp了详见官方题解以及百度文库:原创 2016-09-16 13:35:53 · 394 阅读 · 0 评论 -
[矩阵快速幂加速DP] Codeforces 717D Bubble Cup 9 - Finals D. Dexterina’s Lab
fx 表示 异或和为x的概率然后DP一下#include#include#includeusing namespace std;const int N=150;struct Matrix{ int n; double a[N][N]; Matrix(int in=0,int f=0){ n=in; for (int i=0;原创 2016-09-14 19:32:09 · 696 阅读 · 1 评论 -
[BSGS 矩阵 随机化] BZOJ 4128 Matrix
其实完全不必求逆矩阵判相同用了随机化#include#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==原创 2016-09-02 21:39:32 · 460 阅读 · 0 评论 -
[AC自动机 矩阵快速幂 期望] BZOJ 2553 [BeiJing2011]禁忌
首先贪心很容易理解每一步一旦走到禁忌点就会有一的贡献那么就记每一步走到禁忌点的概率然后累加即是答案累加可以加一个新节点 详见:http://www.cnblogs.com/zyfzyf/p/4153860.html原创 2016-08-22 21:32:49 · 439 阅读 · 0 评论 -
[概率 高斯消元 逆矩阵] BZOJ 3640 JC的小苹果
%%%jiry_2把点根据血量拆开进行高斯消元, O(n3hp3)。根据 hp 可以把图分成 hp 层,第 i 层对 j(i > j) 层是没有影响的。每层之间高斯消元,层与层之间递推, O(n3hp)。每一次高斯消元的系数矩阵都是相同的,可以先高斯消元一次预处理,之后消元的时候带入就行了, O(n2hp + n3)。#include#include原创 2016-08-28 18:47:15 · 645 阅读 · 0 评论 -
[KMP DP 矩阵快速幂加速] BZOJ 1009 [HNOI2008]GT考试
%%%jiry_2把 KMP 的 DFA 建出来,相当于求长度为n 的不经过 m 号点的路径条数。矩阵乘法。时间复杂度 O(n3logn)#include#include#includeusing namespace std;const int N=25;int n,m,P;struct Matrix{ int n,a[N][N]; Matrix(原创 2016-08-05 14:53:51 · 439 阅读 · 0 评论 -
[AC自动机 概率DP 矩阵乘法||高斯消元] BZOJ 1444 [Jsoi2009]有趣的游戏
AC自动机建转移矩阵 然后要么矩阵乘法 无限迭代 数据范围小可以接受#include#include#include#includeusing namespace std;typedef long double ld;//typedef double ld;inline char nc(){ static char buf[100000],*p1=buf,*原创 2016-07-21 08:44:58 · 766 阅读 · 0 评论 -
[矩阵 二项式定理 单位根 构造 数学神题] BZOJ 3328 PYXFIB
题解:http://blog.csdn.net/regina8023/article/details/45007551#include#include#include#includeusing namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2原创 2016-06-29 16:51:05 · 1450 阅读 · 0 评论 -
[矩阵快速幂 优化DP] 51Nod 1311 转换机
#include#include#includeusing namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fread(buf,1,100000,stdin); if (p1==p2) re原创 2016-07-04 19:18:27 · 564 阅读 · 0 评论 -
[矩阵快速幂 DP] BZOJ 4037 [HAOI2015]数字串拆分 & BZOJ 2323 [ZJOI2011]细胞
题解 把矩阵当做DP的值来转移 因为矩阵乘法满足结合律 分配律 然后大力DP就好了#include<cstdio>#include<cstdlib>#include<algorithm>#include<cstring>#define cl(x) memset(x,0,sizeof(x))using namespace std;typedef long long ll;const i原创 2017-04-22 20:29:16 · 406 阅读 · 0 评论