【题目分析】

Matrix-Tree定理+高斯消元

求矩阵行列式的值,就可以得到生成树的个数。

至于证明,可以去看Vflea King(炸树狂魔)的博客

【代码】

#include <cmath>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;#define eps 1e-8
#define maxn 15
double C[maxn][maxn],G[maxn][maxn],A[maxn][maxn];
int tt,n,m,a,b;void Gauss()
{double ret=1;for (int i=1;i<n;++i){for (int j=i+1;j<n;++j)while (fabs(C[j][i])>eps){double t=C[i][i]/C[j][i];for (int k=i;k<n;++k)C[i][k]-=t*C[j][k];for (int k=i;k<n;++k)swap(C[i][k],C[j][k]);ret*=-1;}ret=ret*C[i][i];}printf("%.0f\n",ret);
}int main()
{scanf("%d",&tt);while (tt--){memset(G,0,sizeof G);memset(A,0,sizeof A);memset(C,0,sizeof C);scanf("%d%d",&n,&m);for (int i=1;i<=m;++i){int a,b;scanf("%d%d",&a,&b);G[a][a]+=1;G[b][b]+=1;A[a][b]=A[b][a]=1;}for (int i=1;i<=n;++i)for (int j=1;j<=n;++j)C[i][j]=G[i][j]-A[i][j];Gauss();}
}

  

转载于:https://www.cnblogs.com/SfailSth/p/6195170.html

SPOJ HIGH Highways ——Matrix-Tree定理 高斯消元相关推荐

  1. 2020 ICPC 济南 A Matrix Equation (高斯消元)

    题目链接A-Matrix Equation 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(济南) 题目描述 We call a matrix "01 Square" i ...

  2. 2020 ACM / ICPC 济南 A Matrix Equation (高斯消元、乘法原理)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 给你定义两种 010101 矩阵上的运算: Xi,j×Yi,j=(∑k=1NXi,kYk,j ...

  3. HDU多校6 - 6836 Expectation(矩阵树定理+高斯消元求行列式)

    题目链接:点击查看 题目大意:给出一张由 n 个点和 m 条边组成的无向图,对于任意一个生成树,其权值为 n - 1 条边的边权进行二进制的 and 运算,现在需要在图中任意选择一个生成树,问期望权值 ...

  4. CF917D-Stranger Trees【矩阵树定理,高斯消元】

    正题 题目链接:https://www.luogu.com.cn/problem/CF917D 题目大意 给出nnn个点的一棵树,对于每个kkk求有多少个nnn个点的树满足与给出的树恰好有kkk条边重 ...

  5. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(济南):签到题A Matrix Equation(高斯消元求线性异或方程组自由元个数)

    problem 给出两个n*n的01矩阵,A和B 定义两种运算,Z(i,j)=Xi行*Yj列相加%2,D(i,j)=X(i,j)*Y(i,j) 求最多有多少个可能的矩阵C,满足A运算1C==B运算2C ...

  6. 【高斯消元】兼 【期望dp】例题

    [总览] 高斯消元基本思想是将方程式的系数和常数化为矩阵,通过将矩阵通过行变换成为阶梯状(三角形),然后从小往上逐一求解. 如:$3X_1 + 2X_2 + 1X_3 = 3$ $           ...

  7. [学习笔记] Matrix tree定理

    前言 为了回归算法本身,为了搞懂算法,我参考了不同博客,并将他们做出整合和补充: https://www.luogu.com.cn/blog/tanrui-2960967961/matrix-tree ...

  8. 矩阵树 Matrix-Tree 定理实现模板(高斯消元求解行列式)

    大佬1博客:https://www.cnblogs.com/zj75211/p/8039443.html 大佬2博客:https://www.cnblogs.com/yangsongyi/p/1069 ...

  9. Matrix 高斯消元Gaussian elimination 中的complete pivoting和partial pivoting

    首先科普下Pivoting的含义 一般翻译为"主元",在对矩阵做某种算法时,首先进行的部分元素.在线性规划的单纯形法中常见. wiki的解释如下: Pivot element (t ...

最新文章

  1. 实例讲解如何把表格变量传递到存储过程中
  2. Emacs之魂(三):列表,引用和求值策略
  3. 查询方式的一般使用1
  4. LeetCode 1089. 复写零
  5. Linux 下查看线程信息
  6. pb如何获取数据窗口选中行_pb从数据窗口获得数据的方法总结
  7. 3、InterruptedException
  8. 给窗口添加背景图的案例
  9. poj 1159 (DP LCS)
  10. 使用procexp.exe查看线程
  11. DOS攻击之Synflood攻击
  12. Maven整合SSM项目(七)
  13. eda交通灯控制器波形输入_EDA 基于quartus平台制作的步行街自助式交通灯控制器(含vhdl程序、波形图、及电路原理图)+课程设计报告...
  14. Linux交换内存10g,Linux服务器只使用60%的内存,然后交换
  15. python debug配置launch.json例子
  16. linux regulator接口驱动demo
  17. 计算机的隐藏功能应用,关于Mac电脑的8个神奇隐藏功能,你知道几个?
  18. 2018年阅读书物列表
  19. Oracle-12c新功能基于时间点recover table
  20. 哈佛经典:领导者应该做什么?(领导与管理的不同)

热门文章

  1. Java——多线程实现的三种方式
  2. Java——IO流(序列流)
  3. 宜昌宝塔河项目_宜昌城区首个垃圾分类定时定点投放点启用 厨余垃圾破袋投放...
  4. es6 数组合并_13个不low的JS数组操作,你需要知道一下
  5. 网络基础4(TCP三次握手,四次握手,TCP流量控制,TCP状态转换 , TCP异常断开,设置TCP属性,端口复用)
  6. Python3常用数据结构
  7. c++11 你需要知道这些就够了
  8. x86异常处理与中断机制(2)中断向量表
  9. 【Verilog HDL学习之路】第二章 Verilog HDL的设计方法学——层次建模
  10. 【Leetcode】113. 路径总和 II