
矩阵树定理
文章平均质量分 70
wwyx2001
OIer----这条路,仅一人独行
展开
-
[BZOJ3534][SDOI2014]重建(矩阵树定理)
题目: 我是超链接 题解: 代码:原创 2018-06-06 23:53:23 · 359 阅读 · 0 评论 -
[BZOJ4766]文艺计算姬(矩阵+矩阵树定理+快速加)
题目: 我是超链接 题解: 完全二分图:X中的任一顶点与Y中每一个顶点均有且仅有唯一的一条边相连 不难发现K矩阵是长这个样子的 我们对这个矩阵分一下块,左上角是n * n的对角线为m的矩阵A,右上角是全为-1的n * (m-1)的矩阵B,左下角是全为-1的(m-1) * n的矩阵C,右下角是对角线为n的(m-1)*(m-1)的矩阵设为D 分块矩阵的行列式求法: ...原创 2018-06-05 15:57:46 · 509 阅读 · 0 评论 -
[BZOJ4596][SHOI2016]黑暗前的幻想乡(矩阵树定理+容斥)
题目: 我是超链接 题意: n个点要修n-1条路(形成一棵树)。有n-1个公司,每个公司可以修建某些路径。求每个公司恰好修建一条路能修成树的方案数。 题解: 生成树的数量要考虑矩阵树定理,但是如果把所有的边加进去,不能保证每个公司都修一条路。 我们考虑容斥,其实答案就是:至少不选0个公司-至少不选1个公司+至少不选2个公司…… 我们可以二进制枚举哪些公司选,剩下的就是不选的。 代码...原创 2018-06-05 11:07:35 · 252 阅读 · 0 评论 -
[BZOJ4031][HEOI2015]小Z的房间(矩阵树定理)
题目: 我是超链接 题解: 利用类似辗转相除的方法,避免了对1e9取余,就可以避开做除法的过程。 因为每次交换行,都会使行列式的值变成原来的-1倍,因为是取模,所以不能对最后的结果直接取绝对值。需要记录交换的次数,然后计算答案,再进行取模。 代码: #include <cstdio> #include <cstring> #include <iostr...原创 2018-06-04 18:46:14 · 209 阅读 · 0 评论 -
[BZOJ1016][JSOI2008]最小生成树计数(辗转相除高斯消元+矩阵树定理)
题目: 我是超链接 题解: 最小生成树有两个性质: (1)不同的最小生成树中,每种权值的边出现的个数是确定的 (2)不同的生成树中,某一种权值的边连接完成后,形成的联通块状态是一样的 那么我们其实可以把每种权值的处理看成是分开的好几步,然后根据乘法原理,将每一步得到的结果相乘。 举个例子,下图中s1,s2,s3表示已经处理好的3个连通块,虚线表示一组同权值的边。加入这组边后s1...原创 2018-06-03 21:58:52 · 838 阅读 · 1 评论 -
矩阵树定理学习笔记
前置知识:矩阵的行列式 行列式是什么? det(K)=∑((−1)τ(P)×D1,p1×D2,p2×D3,p3×...×Dn,pN)det(K)=∑((−1)τ(P)×D1,p1×D2,p2×D3,p3×...×Dn,pN)det(K)=∑((−1)^{τ(P)}×D_{1,p_1}×D_{2,p_2}×D_{3,p_3}×...×D_{n,p_N}) 其中P为1−N的任意一个排列,τ(...原创 2018-06-03 19:22:00 · 535 阅读 · 0 评论