高斯消元 模板 luogu P3389 #include<bits/stdc++.h> using namespace std; const double eps=1e-6; const int N=100+5; double a[N][N]; int n; int gauss(){ int c,r ...
分类:
其他好文 时间:
2021-03-26 15:26:50
阅读次数:
0
#简介 矩阵树定理用于生成树计数。 #高斯消元解行列式 行列式就是一个$n\times n$的矩阵。对行列式可以求值。 具体怎么做,就是行列式搞一次高斯消元,然后对角线乘起来就是行列式的值。 #矩阵树定理 首先要求出“基尔霍夫矩阵”,这需要两个矩阵$D$和$A$,然后$D-A$就是它了。 接着把这个 ...
分类:
其他好文 时间:
2020-09-17 14:10:20
阅读次数:
27
[LuoguP4208][JSOI2008]最小生成树计数 题面 现在给出了一个简单无向加权图。你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树。(如果两颗最小生成树中至少有一条边不同,则这两个最小生成树就是不同的)。由于不同的最小生成树可能很多,所以你只需要输出方案数对 ...
分类:
Web程序 时间:
2020-07-26 00:42:11
阅读次数:
88
题目 点这里看题目。 分析 考察一下矩阵树定理的基本式子: \(\sum_T \prod_{e\in T} w_e\) 设$v(T)$为$T$的权值,我们发现,$v(T)$应该是$T$中的边的“某种意义”下的积。 这意味着,我们只需要能够保证$v(T)$的贡献可分割,便可以定义一个存在基础四则运算的 ...
分类:
其他好文 时间:
2020-07-04 15:30:15
阅读次数:
61
数论 矩阵树定理 0.1 简介 矩阵树定理是一个受限很窄的定理,基本上题目中有任何其它的限制条件,矩阵树就不是正解(#`-_ゝ-) 但是..但是..人家逼格高啊ˋ( ° ▽、° ) 1.1 基尔霍夫矩阵 (一) 对于图上的$n$个结点,矩阵大小为$n\times n$ (二) 对称线$(i,i)$上 ...
分类:
其他好文 时间:
2020-06-29 23:10:24
阅读次数:
83
通常,矩阵树定理算出的生成树是边权乘积的和。 如果计算所有生成树边权和的和,比较暴力的方法就是枚举一条边,然后计算包含这条边的生成树个数。 这样的时间复杂度是$O(mn3)$的,最坏为$O(n3)$。 考虑优化: 对于一条边权为w的边,将边权设为关于x的多项式$1+wx$。 这样,容易证出,最后的一 ...
分类:
其他好文 时间:
2020-06-25 00:00:13
阅读次数:
181
矩阵树就是指计算一个图生成树的个数(无论有没有环,边带不带权,有向或无向,指不指定根节点,外向树或内向树,都可以计算) 在此之前,我们引入一个问题: 问题1:给定一个n个节点的完全图,求其生成树个数。 这个问题,简单的prufer序列就可以解决,显然,答案是$n^{n-2}$。 一次升级版: 问题2 ...
分类:
其他好文 时间:
2020-06-13 21:26:17
阅读次数:
101
LINK:树形图求和 很妙的题目 因为之前没有了解过 有向图的矩阵树 所以自然GG了. 这里先给出矩阵树定理的三种形式 防止以后再考。 第一种 无向图的矩阵树 总所周知. 第二种 有向图的内向树 所谓内向树就是所有的点都指向一个点的有向树. 邻接矩阵矩阵 $a_{i,j}$表示i到j的路径条数 度数 ...
分类:
其他好文 时间:
2020-05-29 21:25:09
阅读次数:
63
Matrix-Tree 定理作用:给定 n 个点 m 条边的无向图,求图的生成树个数。 定义矩阵K[i][j]=D[i][j]-A[i][j],(其中D为度数矩阵(即当i==j时,D[i][j]=节点 i 的度数,其余为0),A为邻接矩阵,有边相邻即为1,其余为0) 结论:对于已经得出的基尔霍夫矩阵 ...
分类:
其他好文 时间:
2020-05-08 13:10:58
阅读次数:
132
就是对于一个图,求有多少个生成树。 基尔霍夫矩阵树定理:构建一个邻接矩阵,对角线上的点值等于点 i 的度数,如果 i 和 j 有边相连 对应矩阵点值为 -1 生成树个数:任意的n-1阶行列式的值。 UVA - 10766 题目大意:现有n个点,m条边,k为根节点,每条边代表边的两点有矛盾,不能相连, ...
分类:
其他好文 时间:
2020-05-07 23:08:29
阅读次数:
80