【BZOJ 1002】 [FJOI2007]轮状病毒 【矩阵树定理】【留坑】

来源:互联网 发布:软件升级服务合同 编辑:程序博客网 时间:2024/06/05 05:30

【知识背景:线性代数】
【NOIP后再看这道题…现在直接看了最终答案然后水过去了..orz..】
【向大佬低头…蒟蒻瑟瑟发抖..】

要做这道题首先要知道矩阵树定理。

1、G的度数矩阵D[G]是一个n*n的矩阵,并且满足:当i≠j时,dij=0;当i=j时,dij等于vi的度数。
2、G的邻接矩阵A[G]也是一个n*n的矩阵, 并且满足:如果vi、vj之间有边直接相连,则aij=1,否则为0。
我们定义G的Kirchhoff矩阵(也称为拉普拉斯算子)C[G]为C[G]=D[G]-A[G],
则Matrix-Tree定理可以描述为:G的所有不同的生成树的个数等于其Kirchhoff矩阵C[G]任何一个n-1阶主子式的行列式的绝对值。所谓n-1阶主子式,就是对于r(1≤r≤n),将C[G]的第r行、第r列同时去掉后得到的新矩阵,用Cr[G]表示

1 0