![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
高斯消元
zxyoi_dreamer
退役了退役了爬了爬了,搞个锤子算法竞赛,不如好好享受大学生活。
展开
-
【模板】高斯消元
参考题目:洛谷P3389#解析:首先高斯消元是干什么的?求解如下形式的线性方程组对于∀i=1,2,3...n对于\forall i=1,2,3...n对于∀i=1,2,3...n∑j=1nai,j∗xj=bi\sum_{j=1}^{n} a_{i,j}*x_j = b_ij=1∑nai,j∗xj=bi那么现在我们考虑把原来的方程转化成如下的n∗(n+1)n*(n+1)n∗(n+1...原创 2018-09-19 00:33:00 · 115 阅读 · 0 评论 -
【CodeChef-BWGAME】Black-white Board Game(可并堆)(高斯消元)
传送门题解:首先读题,很显然答案就是行列式的值。由于矩阵是每行有一段连续的一,显然消元之后每行也是一段连续的一。我们直接用可并堆枚举左端点,维护一下右端点的位置,然后消元的时候相当于直接取右端点最靠前的,然后把剩下的并过去即可。模拟即可代码:#include<bits/stdc++.h>#define ll long long#define re register...原创 2019-09-09 20:54:12 · 193 阅读 · 0 评论 -
【题目泛做】树(矩阵树)(高斯消元)
给一棵n 个节点的树,节点分别编号为0 到n - 1。你可以通过如下的操作来修改这棵树:首先先删去树上的一条边,此时树会分裂为两个连通块,然后在两个连通块之间加上一条新的边使得它们变成一棵新的树。问有多少棵n 个节点的树可以通过对原树进行不超过k 次这样的操作来得到,答案对10^9 + 7 取模。如果有一条边(u; v) 出现在了树A 中且不在树B中,我们就认为树A 和树B 是不同的。对于1...原创 2019-09-03 09:25:20 · 223 阅读 · 0 评论 -
【洛谷P4708】画画(Burnside)(高斯消元)(并查集)
传送门题解:首先遇到这种图同构问题数据范围还小得一批的,还是先考虑暴力枚举有序正整数拆分,算出某种置换下的答案后来搞一波。注意到题目要求的实际上是每个连通块都有欧拉回路,也就是所有点的度数必须是偶数。可以直接用最小表示法来表示循环,然后爆搜所有边等价类对点的度数的影响。然后高斯消元解xor方程组算方案数就行了。但是高斯消元上界是O(n4)O(n^4)O(n4),最坏是O(n2)O(n^...原创 2019-09-02 18:55:12 · 291 阅读 · 0 评论 -
【CQOI2014】和谐矩阵(xor方程组上高斯消元)
传送门题解:直接对1600个变量列xor方程组+普普通通的常数优化就能过了。但是我们还是希望有一个复杂度看起来靠谱的做法。考虑第一行确定之后,我们可以直接递推出下面所有格子的情况。用第一行的变量的xor和来表示下面所有格子,对最后一行建立方程组,高斯消元。注意有解一定会有自由元,设置成1之后递推即可,没有自由元意味着所有格子必须为全0,自然无解。代码:#include<b...原创 2019-08-30 20:27:53 · 147 阅读 · 0 评论 -
【2017集训队作业】小c的岛屿(斯特林反演)(期望)(高斯消元)
题面:有 nnn 座岛屿,初始时没有边。每座岛屿都有一个概率值 pip_ipi 和一个友好列表 AiA_iAi。小 c 站在 111 号岛屿,依次执行以下操作:设现在在岛屿 xxx,有 pxp_xpx 的概率产生一条图中不存在的随机无向边,不会产生自环。如果此时所有岛屿仍未连通,他会在当前点的友好列表中,随机选择一个,走到那座岛屿上,并把不满意度 +1+1+1,然后重复第 111 ...原创 2019-08-27 14:55:32 · 308 阅读 · 0 评论 -
【TC SRM 670】【TC 13891】【BZOJ4671】Gxor(斯特林反演)(线性基)(高斯消元)
传送门题解:枚举一下连通块,不同块之间不允许连边,同块之间允许任意连边。然后高斯消元算一下方案数。我们需要算的是111个连通块的方案数。考虑一个实际连通块数量为ttt的图,它会在我们枚举kkk个连通块的时候被算St,kS_{t,k}St,k次。考虑∑i(−1)i−1Sn,i(i−1)!=[n=1]\sum_{i}(-1)^{i-1}S_{n,i}(i-1)!=[n=1]∑i(−1...原创 2019-08-23 21:43:59 · 234 阅读 · 0 评论 -
2019.04.03【校内模拟】猎人杀(hunter)(高斯消元)(期望DP)
传送门解析:首先所有人编号−1-1−1,这样好处理一些。代码:#include<bits/stdc++.h>#define ll long long#define re register#define gc get_char#define cs constusing std::cout;using std::cerr;cs int mod=1e9+7,in...原创 2019-04-03 23:05:19 · 146 阅读 · 0 评论 -
2019.03.06【BJOI2018】【洛谷P4458】【BZOJ5292】治疗之雨(高斯消元)
洛谷传送门BZOJ传送门解析:除了最后解方程需要一点技巧以外,剩下的就是套路啊。先来看一个一般一点的问题,给出一个图(非DAG),询问SSS到TTT的期望步数。显然一个点的期望是,ET=0,Eu=1+∑v∈suc(u)PuvEv,E_T=0,E_u=1+\sum_{v\in suc(u)}P_{uv}E_v,ET=0,Eu=1+∑v∈suc(u)PuvEv列方程高斯消元就行...原创 2019-03-06 21:42:17 · 147 阅读 · 0 评论 -
2019.02.28【HAOI2018】【BZOJ5303】【洛谷P4494】反色游戏(割点) (高斯消元推结论)
BZOJ传送门洛谷传送门解析:出题人的部分分给的太多了吧。。。光是O(n4)O(n^4)O(n4)高斯消元解异或方程组就有50pts50pts50pts。不过还是可以理解的,毕竟谁会想到考高斯消元啊。一个很显然的做法,高斯消元解异或方程组,设最后自由元的数量为ttt,显然答案就是2t2^t2t。注意一点,如果最后某一个联通分量中有奇数个黑点就gggggg了。显然我们每次操作对黑点数量...原创 2019-02-28 22:49:40 · 153 阅读 · 0 评论 -
2018.12.07【LOJ114】k 大异或和(线性基)(高斯消元)
代码:#include&amp;lt;bits/stdc++.h&amp;gt;using namespace std;#define ll long long#define re register#define gc get_char#define pc put_char#define cs constnamespace IO{ cs int Rlen=1&amp;lt;&amp;lt;18|1; ch...原创 2018-12-07 23:44:10 · 219 阅读 · 0 评论 -
【SDOI2017】硬币游戏(高斯消元)(AC自动机)
传送门因为不取模,所以高消的时候可能会在一些奇奇怪怪的地方炸精度。都2017的省选了,在这种题目上为什么不取模啊对计数和概率取模这种套路不是在2014年的时候就在各种OJ的比赛里面普及过了吗。。。这道题的严格推导要用到无限集合的理论,我自己尝试证明了一遍,有点复杂,而且对于不懂高等概率的人来说可能看不懂,这里只给一个口胡式的解答。题解:首先我们明白一点,在接下来的ttt次随机中强行指...原创 2019-09-20 20:50:59 · 138 阅读 · 0 评论