【高斯消元】CDOJ1785 曜酱的线性代数课堂(三)
高斯消元求行列式板子。
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstring>
using namespace std;
const double EPS=0.00000001;
#define N 105
int n;
double B[N][N],A[N][N];
double guass_jordan()
{
double res=1.0;
memcpy(B,A,sizeof(A));
for(int i=1;i<=n;++i)
{
int pivot=i;
for(int j=i+1;j<=n;++j)
if(fabs(B[j][i])>fabs(B[pivot][i]))
pivot=j;
swap(B[i],B[pivot]);
if(i!=pivot){
res*=(-1.0);
}
if(fabs(B[i][i])<EPS){
return 0.0;
}
for(int j=i+1;j<=n;++j)
B[i][j]/=B[i][i];
res*=B[i][i];
for(int j=1;j<=n;++j)
if(i!=j)
for(int k=i+1;k<=n;++k)
B[j][k]-=B[j][i]*B[i][k];
}
return res;
}
int main()
{
// freopen("hanglieshi3.in","r",stdin);
// freopen("hanglieshi3.out","w",stdout);
char t[1000];
while(scanf("%d",&n)!=EOF){
memset(A,0,sizeof(A));
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j){
scanf("%lf",&A[i][j]);
}
}
double ans=guass_jordan();
sprintf(t,"%.3f",ans);
if(t[0]=='-' && t[1]=='0' && t[2]=='.' && t[3]=='0' && t[4]=='0' && t[5]=='0'){
puts("0.000");
}
else{
printf("%.3f\n",ans);
}
}
return 0;
}
【高斯消元】CDOJ1785 曜酱的线性代数课堂(三)的更多相关文章
- 【高斯消元】CDOJ1784 曜酱的线性代数课堂(二)
高斯消元求矩阵秩板子. #include<cstdio> #include<cmath> #include<algorithm> #include<cstri ...
- 【高斯消元】CDOJ1783 曜酱的线性代数课堂(一)
高斯消元求逆矩阵板子. #include<cstdio> #include<cmath> #include<algorithm> #include<cstri ...
- P3265 [JLOI2015]装备购买(高斯消元+贪心,线性代数)
题意; 有n个装备,每个装备有m个属性,每件装备的价值为cost. 小哥,为了省钱,如果第j个装备的属性可以由其他准备组合而来.比如 每个装备属性表示为, b1, b2.......bm . 它可以由 ...
- 【CF736D】Permutations 线性代数+高斯消元
[CF736D]Permutations 题意:有一个未知长度为n的排列和m个条件,第i个条件$(a_i,b_i)$表示第$a_i$个位置上的数可以为$b_i$.保证最终合法的排列的个数是奇数.现在有 ...
- [高斯消元] POJ 2345 Central heating
Central heating Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 614 Accepted: 286 Des ...
- 高斯消元 分析 && 模板 (转载)
转载自:http://hi.baidu.com/czyuan_acm/item/dce4e6f8a8c45f13d7ff8cda czyuan 先上模板: /* 用于求整数解得方程组. */ #inc ...
- POJ 1830 开关问题(高斯消元)题解
思路:乍一看好像和线性代数没什么关系.我们用一个数组B表示第i个位置的灯变了没有,然后假设我用u[i] = 1表示动开关i,mp[i][j] = 1表示动了i之后j也会跟着动,那么第i个开关的最终状态 ...
- poj1222(枚举or高斯消元解mod2方程组)
题目链接: http://poj.org/problem?id=1222 题意: 有一个 5 * 6 的初始矩阵, 1 表示一个亮灯泡, 0 表示一个不亮的灯泡. 对 (i, j) 位置进行一次操作则 ...
- 【BZOJ-3143】游走 高斯消元 + 概率期望
3143: [Hnoi2013]游走 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 2264 Solved: 987[Submit][Status] ...
随机推荐
- 爬虫--Urllib库详解
1.什么是Urllib? 2.相比Python2的变化 3.用法讲解 (1)urlopen urlllb.request.urlopen(url,data=None[timeout,],cahle=N ...
- Android控件——监听按钮的点击事件
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAroAAAFTCAIAAABZPDiZAAAgAElEQVR4nOy9918UWfb///1jdu2uBs
- JS中,children和childNodes的不同之处
<ul id="ul"><li></li><li></li><li><span></spa ...
- 64_l4
libnormaliz-devel-3.1.4-2.fc26.i686.rpm 23-May-2017 00:24 31214 libnormaliz-devel-3.1.4-2.fc26.x86_6 ...
- python mysql插入数据遇到的错误
1.数据插入的时候报错:not enough arguments for format string,大概意思就是说没有足够的参数格式化字符串. 我的数据库插入方法是这样的 def add_data( ...
- Win10默认图片查看器更改
Win10自带的图片查看器不是很习惯,其背景乌漆嘛黑,宽扁的额头让人想起了黑边火腿肠手机,无法直视.怀念Win7和Win8.1的图片查看器,一个鼠标滚轮缩放自如的酸爽感觉.但却遗憾地发现,并不能直观地 ...
- C json实战引擎 三 , 最后实现部分辅助函数
引言 大学读的是一个很时髦的专业, 学了四年的游戏竞技. 可惜没学好. 但认真过, 比做什么都认真. 见证了 ...... 打的所有游戏人物中 分享一位最喜爱 的 “I've been alone ...
- linux sftp and unix ftp
sftp 1.功能作用 sftp 是一个交互式文件传输程式.它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性. 2.位置 /usr/bin/sftp 3.格式用法 sftp [-1246C ...
- jQuery -《锋利的jQuery》————读后小结
jQuery是一个优秀的javascript库. 我用的是vs2012自带的 jquery-1.8.2.js这个库,在Scripts这个文件夹下面 首先,我们使用jQuery要在head标签内引入j ...
- python 使用国内源安装软件
python linux 等 使用国内源安装软件 速度更快 你值得拥有 ! 豆瓣源:pip install -i https://pypi.douban.com/simple/ 阿里源:pip ins ...