当前位置: 首页 > news >正文

SPOJ Highways [矩阵树定理]

裸题

注意:

1.消元时判断系数为0,退出

2.最后乘ans要用double....

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
typedef long long ll;
const int N=15;
double eps=1e-8;
inline int read(){
    char c=getchar();int x=0;
    while(c<'0'||c>'9'){c=getchar();}
    while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();}
    return x;
}
int n,m,u,v;
double a[N][N];
void Gauss(){
    n--;
    for(int i=1;i<=n;i++){
        int r=i;
        for(int j=i+1;j<=n;j++) if(abs(a[j][i])>abs(a[r][i])) r=j;
        if(abs(a[r][i])<eps){puts("0");return;}
        if(r!=i) for(int k=1;k<=n;k++) swap(a[r][k],a[i][k]);
        for(int j=i+1;j<=n;j++){
            double t=a[j][i]/a[i][i];
            for(int k=i;k<=n;k++) a[j][k]-=t*a[i][k];
        }
    }
    double ans=1;
    for(int i=1;i<=n;i++) ans*=a[i][i];
    printf("%.0f\n",abs(ans));
}
int main(){
    freopen("in","r",stdin);
    int T=read();
    while(T--){
        n=read();m=read();
        memset(a,0,sizeof(a));
        for(int i=1;i<=m;i++){
            u=read();v=read();
            a[u][u]++;a[v][v]++;
            a[u][v]--;a[v][u]--;
        }
        Gauss();
    }
}

 

相关文章:

  • ​插件化DPI在商用WIFI中的价值
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • Xcode8 打包ios app,上传APPStore,发布流程 以及证书和配置文件遇到的坑
  • 数据结构与算法 第四次实验报告 图
  • php 验证邮箱的方法
  • centos7 修改默认字符集
  • mybatis的动态sql中collection与assoction
  • OpenStack学习:通过devstack安装openstacke mitaka
  • Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试
  • 微信小程序把玩(二十九)video组件
  • Linux学习之路(一)命令基本格式
  • php查找字符串中第一个非0的位置截取
  • java学习1-环境搭建
  • XML与JSON的区别?各自有哪些优缺点?
  • android手机rootROM下载地址
  • 〔开发系列〕一次关于小程序开发的深度总结
  • 03Go 类型总结
  • Docker容器管理
  • Facebook AccountKit 接入的坑点
  • Git 使用集
  • python大佬养成计划----difflib模块
  • React系列之 Redux 架构模式
  • 闭包,sync使用细节
  • 第十八天-企业应用架构模式-基本模式
  • 检测对象或数组
  • 如何解决微信端直接跳WAP端
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • 选择阿里云数据库HBase版十大理由
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • ​你们这样子,耽误我的工作进度怎么办?
  • #include<初见C语言之指针(5)>
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (第一天)包装对象、作用域、创建对象
  • (附源码)springboot猪场管理系统 毕业设计 160901
  • (附源码)ssm旅游企业财务管理系统 毕业设计 102100
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (转)fock函数详解
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池
  • .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
  • .net通用权限框架B/S (三)--MODEL层(2)
  • .net项目IIS、VS 附加进程调试
  • .NET性能优化(文摘)
  • @Autowired 与@Resource的区别
  • @EnableConfigurationProperties注解使用
  • @PreAuthorize注解