Gauss 消元法
错乱瞎写
1. 线性方程组
省流:初等行变换化为一个上三角,然后瞬间出解
inline bool z(const double& x){return abs(x)<eps;}
int Gauss() // O(n^3)
{
int c, r;
for (c=1, r=1; c<=n; c++)
{
int m = r;
for (int i=r; i<=n; i++)
if (abs(a[i][c]) > abs(a[m][c])) m = i;
if (z(a[m][c])) continue;
for (int i=c; i<=n+1; i++) swap(a[m][i],a[r][i]);
for (int i=n+1; i>=c; i--) a[r][i] /= a[r][c];
for (int i=r+1; i<=n; i++)
if (!z(a[i][c]))
for (int j=n+1; j>=c; j--) a[i][j] -= a[r][j] * a[i][c];
r++;
}
for (int i=n; i>=0; i--) //回代
for (int j=i+1; j<=n; j++) a[i][n+1] -= a[i][j] * a[j][n+1];
if (r <= n)
{
for (int i=r; i<=n; i++)
if (!z(a[i][n+1])) return -1;
return 0;
} return 1;
}
2. 球形空间产生器sphere
\((r_1,r_2,\cdots,r_n)\)
\]
\]
\]
\]
3. 臭气弹
两种思路:
第一种:暴算
设一个到达 \(u\) 点的概率 \(dp_u\),由于全概率公式
\]
所以
\]
Gauss 消元解出来即可 .
特别的,点 \(1\) 还可以从天而降(概率为 \(1\)),所以 \(dp_1\gets dp_1+1\) .
于是答案是 \(\dfrac QP dp_u\) 或者下面那个带 \(\sum\) 的做法 = =
第二种:期望
令 \(dp_u\) 表示到达 \(u\) 点的期望次数,这里可以拆点(炸 / 不炸)也可以直接搞
\(dp\) 随便求(高斯消元解 dp),然后每个点的概率就是
\]
(eps
要开到 \(10^{-9}\),要不然精度不够)
4. 开关问题
也是两种思路:
第一种是列出一个同余 \(2\) 的线性方程组,然后发现初等行变换依然成立;
第二种是列出一个 xor 线性方程组,初等行变换全部改成 xor 消;
不管哪一种,最后找出自由元数量 \(r\),\(2^r\) 就是答案 .
Gauss 消元法的更多相关文章
- 【Java例题】4.3 3. 使用Gauss消元法求解n元一次方程组的根,
3. 使用Gauss消元法求解n元一次方程组的根,举例,三元一次方程组:0.729x1+0.81x2+0.9x3=0.6867x1+x2+x3=0.83381.331x1+1.21x2+1.1x3=1 ...
- [bzoj1770][Usaco2009 Nov]lights 燈——Gauss消元法
题意 给定一个无向图,初始状态所有点均为黑,如果更改一个点,那么它和与它相邻的点全部会被更改.一个点被更改当它的颜色与之前相反. 题解 第一道Gauss消元题.所谓gauss消元,就是使用初等行列式变 ...
- C# 列主元素(Gauss)消去法 计算一元多次方程组
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- C# 顺序高斯(Gauss)消去法计算一元多次方程组
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Function Set in OPEN CASCADE
Function Set in OPEN CASCADE eryar@163.com Abstract. The common math algorithms library provides a C ...
- OpenCASCADE Interpolation - Lagrange
OpenCASCADE Interpolation - Lagrange eryar@163.com Abstract. Power basis polynomial is the most simp ...
- FORTRAN程序设计权威指南
<FORTRAN程序设计权威指南> 基本信息 作者: 白海波 出版社:机械工业出版社 ISBN:9787111421146 上架时间:2013-7-23 出版日期:2013 年7月 ...
- OpenCASCADE 3 Planes Intersection
OpenCASCADE 3 Planes Intersection eryar@163.com Abstract. OpenCASCADE provides the algorithm to sear ...
- Wannafly Camp 2020 Day 1D 生成树 - 矩阵树定理,高斯消元
给出两幅 \(n(\leq 400)\) 个点的无向图 \(G_1 ,G_2\),对于 \(G_1\) 的每一颗生成树,它的权值定义为有多少条边在 \(G_2\) 中出现.求 \(G_1\) 所有生成 ...
随机推荐
- PowerShell 笔记 - 基础篇
Powershell 笔记 基础 查看powershell版本 PS C:\Users\chino> $PSVersionTable Name Value ---- ----- PSVersio ...
- Elasticsearch(es)介绍与安装
### RabbitMQ从入门到集群架构: https://zhuanlan.zhihu.com/p/375157411 可靠性高 ### Kafka从入门到精通: https://zhuanlan. ...
- HDD线上沙龙·创新开发专场:多元服务融合,助力应用创新开发
5月24日,由华为开发者联盟主办的HUAWEI Developer Day(华为开发者日,简称HDD)线上沙龙·创新开发专场在华为开发者学堂及各大直播平台与广大开发者见面.直播内容主要聚焦Harmon ...
- Python Beautiful Soup库
Beautiful Soup库 Beautiful Soup库:https://www.crummy.com/software/BeautifulSoup/ 安装Beautiful Soup: 使用B ...
- yum源更换/新
参考:https://www.cnblogs.com/opsprobe/p/10673031.html
- 使用PowerShell下载文件
更新记录 本文迁移自Panda666原博客,原发布时间:2021年7月12日. 使用Invoke-WebRequest指令下载文件 [Net.ServicePointManager]::Securit ...
- 使用FileSystemWatcher监听文件状态
更新记录 本文迁移自Panda666原博客,原发布时间:2021年7月2日. 一.FileSystemWatcher类型介绍 在.NET中使用 FileSystemWatcher 类型可以进行监视指定 ...
- ABP Framework 5.3.0 版本新增功能和变更说明
ABP Framework 5.3.0 稳定版已在2022年6月14日正式发布. 以下是本版本的新增功能: "开始"页面提供创建单层项目选项 启动模板提供 PWA 支持 Volo. ...
- 3.shell脚本循环试题
shell脚本循环试题 1.计算从1到100所有整数的和 #!/bin/bash a=0 for i in {1..100} #1到100 #每次循环变量i的值也为循环次数 do a=$[ $a + ...
- rosbag遍历数据出错:(unicode error) 'utf-8' codec can't decode byte 0xcd in position 31: invalid continuation byte
主题: 前言 针对ros系统记录的bag文件,可以使用python的rosbag包,按照不同起止时间和topic进行提取. 然而,有的topic可以使用rosbag读取,但是不能遍历,存在解码错误.原 ...