矩阵树定理

本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132152078

启蒙: http://zhengruioi.com/contest/1416 T1,T2的10分暴力(后面是论文科技,不搞了)

https://www.luogu.com.cn/problem/P6178

O(n3)O(n^3) 解决无向图生成树计数问题。

行列式

  1. 交换两行,行列式变号

  2. 一行整体加上 kk 倍另一行,行列式符号不变

  3. 行列式如果只有其中对角线非0,那么它的值就是对角线上值的乘积

  4. 矩阵树定理好像要求余子式,至于为啥oi不用管,记结论就行

构造

构造一个度数矩阵, f[x][x]f[x][x] 表示 xx 的度数(外向树为出度,内向树为入度), g[x][y]g[x][y] 表示 xyx\to y 这条边的边权。然后令 h=fgh=f-g ,求 hh 的行列式即可。

建图

在这里插入图片描述

计算行列式

在这里插入图片描述