关闭

[矩阵快速幂 DP] BZOJ 4037 [HAOI2015]数字串拆分 & BZOJ 2323 [ZJOI2011]细胞

题解 把矩阵当做DP的值来转移 因为矩阵乘法满足结合律 分配律 然后大力DP就好了#include #include #include #include #define cl(x) memset(x,0,sizeof(x)) using namespace std; typedef long long ll;const i...
阅读(128) 评论(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的约数个数 然后就是树上的问题了 我们知道叉乘不满足结合律 打完之后才知道 汗 但是满足反交换律 然后我们就可以把叉乘表示成矩阵的形式 这是有结合律的 然后就是卡常历程 最后几乎就是照...
阅读(156) 评论(0)

[矩阵乘法转图论 强连通] Codeforces 403C #236 (Div. 1) C. Strictly Positive Matrix

考虑矩阵乘法在图论下的意义 Aki,j>0A^k_{i,j}>0意味着ii到jj存在长度为kk的路径 我们考虑两两之间都有路径 那么必定是一整个强连通分量 这是必要性 因为至少有子环 当kk足够大时 肯定能够成立 这是充分性#include #include #include #define read(x) scanf("%d",&(x...
阅读(163) 评论(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...
阅读(196) 评论(0)

[矩阵快速幂 数学] UR #16 A.破坏发射台

其实那个不考虑对角是可以手推的 考虑对角只能dp了 详见官方题解以及百度文库:...
阅读(132) 评论(0)

[矩阵快速幂加速DP] Codeforces 717D Bubble Cup 9 - Finals D. Dexterina’s Lab

fx 表示 异或和为x的概率 然后DP一下 #include #include #include using 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;...
阅读(408) 评论(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==...
阅读(222) 评论(0)

[概率 高斯消元 逆矩阵] BZOJ 3640 JC的小苹果

%%%jiry_2 把点根据血量拆开进行高斯消元, O(n3hp3)。 根据 hp 可以把图分成 hp 层,第 i 层对 j(i > j) 层是没有影响的。 每层之间高斯消元,层与层之间递推, O(n3hp)。 每一次高斯消元的系数矩阵都是相同的,可以先高斯消元一次预处 理,之后消元的时候带入就行了, O(n2hp + n3)。 #include #include ...
阅读(204) 评论(0)

[AC自动机 矩阵快速幂 期望] BZOJ 2553 [BeiJing2011]禁忌

首先贪心很容易理解 每一步一旦走到禁忌点就会有一的贡献 那么就记每一步走到禁忌点的概率然后累加即是答案 累加可以加一个新节点  详见:http://www.cnblogs.com/zyfzyf/p/4153860.html...
阅读(174) 评论(0)

[KMP DP 矩阵快速幂加速] BZOJ 1009 [HNOI2008]GT考试

%%%jiry_2 把 KMP 的 DFA 建出来,相当于求长度为 n 的不经过 m 号点的路径条数。 矩阵乘法。 时间复杂度 O(n3logn) #include #include #include using namespace std; const int N=25; int n,m,P; struct Matrix{ int n,a[N][N]; Matrix(...
阅读(235) 评论(0)

[AC自动机 概率DP 矩阵乘法||高斯消元] BZOJ 1444 [Jsoi2009]有趣的游戏

AC自动机建转移矩阵  然后 要么矩阵乘法 无限迭代 数据范围小可以接受 #include #include #include #include using namespace std; typedef long double ld; //typedef double ld; inline char nc() { static char buf[100000],*p1=buf,*...
阅读(302) 评论(0)

[矩阵快速幂 优化DP] 51Nod 1311 转换机

#include #include #include using 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...
阅读(193) 评论(0)

[矩阵 二项式定理 单位根 构造 数学神题] BZOJ 3328 PYXFIB

题解:http://blog.csdn.net/regina8023/article/details/45007551 #include #include #include #include using namespace std; typedef long long ll; inline char nc() { static char buf[100000],*p1=buf,*p2...
阅读(421) 评论(0)

[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 (...
阅读(246) 评论(0)
    个人资料
    • 访问:264085次
    • 积分:11943
    • 等级:
    • 排名:第1328名
    • 原创:969篇
    • 转载:3篇
    • 译文:0篇
    • 评论:50条
    最新评论