gym100923C. Por Costel and Bujor (高斯消元)
题意:简化一下 就是解N个 系数矩阵一样 等式右边列矩阵不一样的方程组
题解:系数矩阵一样 为什么我却毫无办法????
其实只要把等式右边的矩阵都排在后面就好了啊
就变成解一个N x 2N的方程组了 ...
#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-9; int n;
double a[205][405]; void gauss()
{
int now = 1, to;
for(int i = 1; i <= n; i++)
{
to = now;
for(int j = now; j <= n; j++) {
if(fabs(a[j][i]) > fabs(a[to][i])) to = j;
}
//if(to > n) continue;
if(fabs(a[to][i]) < eps) continue;
if(to != now)
for(int j = 1; j <= n + n; j++) swap(a[to][j], a[now][j]); double tmp = a[now][i];
//for(int j = 1; j <= n + n; j++) a[now][j] /= tmp;
for(int j = 1; j <= n + n; j++)
if(j != now)
{
tmp = a[j][i];
for(int k = 1; k <= n + n; k++) a[j][k] -= tmp * a[now][k];
}
now++;
}
}
int main() {
//freopen("bujor.in","r",stdin);
//freopen("bujor.out","w",stdout); int T;
scanf("%d", &T);
while(T--) {
scanf("%d", &n);
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++) scanf("%lf", &a[i][j]); for(int j = n + 1; j <= n * 2; j++)
for(int i = 1; i <= n; i++) {
if(i + n == j) a[i][j] = 1;
else a[i][j] = 0;
}
gauss(); for(int i = 1; i <= n; i++) {
for(int j = n + 1; j <= 2 * n; j++) {
double tmp = a[i][j] / a[i][i];
if(fabs(tmp) < eps) tmp = 0;
if(j != 2 * n) printf("%.9lf ", tmp);
else printf("%.9lf\n", tmp);
}
}
}
return 0;
}
gym100923C. Por Costel and Bujor (高斯消元)的更多相关文章
- 【BZOJ-3143】游走 高斯消元 + 概率期望
3143: [Hnoi2013]游走 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 2264 Solved: 987[Submit][Status] ...
- 【BZOJ-3270】博物馆 高斯消元 + 概率期望
3270: 博物馆 Time Limit: 30 Sec Memory Limit: 128 MBSubmit: 292 Solved: 158[Submit][Status][Discuss] ...
- *POJ 1222 高斯消元
EXTENDED LIGHTS OUT Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 9612 Accepted: 62 ...
- [bzoj1013][JSOI2008][球形空间产生器sphere] (高斯消元)
Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球 面上n+1个点的坐标,你需要以最快的速度确定这个n维球体的球心坐标,以便于摧 ...
- hihoCoder 1196 高斯消元·二
Description 一个黑白网格,点一次会改变这个以及与其连通的其他方格的颜色,求最少点击次数使得所有全部变成黑色. Sol 高斯消元解异或方程组. 先建立一个方程组. \(x_i\) 表示这个点 ...
- BZOJ 2844 albus就是要第一个出场 ——高斯消元 线性基
[题目分析] 高斯消元求线性基. 题目本身不难,但是两种维护线性基的方法引起了我的思考. void gauss(){ k=n; F(i,1,n){ F(j,i+1,n) if (a[j]>a[i ...
- SPOJ HIGH Highways ——Matrix-Tree定理 高斯消元
[题目分析] Matrix-Tree定理+高斯消元 求矩阵行列式的值,就可以得到生成树的个数. 至于证明,可以去看Vflea King(炸树狂魔)的博客 [代码] #include <cmath ...
- UVALive 7138 The Matrix Revolutions(Matrix-Tree + 高斯消元)(2014 Asia Shanghai Regional Contest)
题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=6 ...
- [高斯消元] POJ 2345 Central heating
Central heating Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 614 Accepted: 286 Des ...
随机推荐
- LeetCode144 二叉树的前序遍历
给定一个二叉树,返回它的 前序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? /** * Defin ...
- mysql的逻辑备份和恢复
备份指定的数据库或此数据库中的某些表 mysqldump [options] db_name [tables] >backup.sql 备份指定的一个或多个数据库 mysqldump --dat ...
- Dubbo的设计理念原来就藏在这三张图中
Dubbo在众多的微服务框架中脱颖而出,占据RPC服务框架的半壁江山,非常具有普适性,熟练掌握 Dubbo的应用技巧后深刻理解其内部实现原理,让大家能更好的掌控工作,助力职场,特别能让大家在面试中脱颖 ...
- 上海某小公司面试题:synchronized锁原理
synchronized锁是Java面试的过程中比较常考的知识点了,从偏向锁->轻量级锁->重量级锁都可以聊 CAS在这篇没有讲述,因为在上一篇已经写了,有兴趣的同学可以翻翻开 目前已经连 ...
- matlab gui matlab gui 鼠标点击显示图像颜色值
首先看看效果 首先功能说明下,运行后通过myfile菜单打开一幅图片之后在axes中显示,由于要使用图片的放大缩小等功能将figure 的菜单栏与工具栏都一并打开了. 界面编程主要是callbac ...
- PHP 框架之一Laravel
Laravel: Laravel The phpFramework for Web Artisans and one of the best php framework in year 2014. L ...
- Golang 单元测试:有哪些误区和实践?
https://mp.weixin.qq.com/s/k8WNWpCIVl4xTmP3TQ_gxQ
- LOJ10145郁闷的出纳员
传送门:https://loj.ac/problem/10145 简单的平衡树 ------------------------------------ 1 #include<bits/stdc ...
- 石子游戏(nim游戏+按位考虑)
题意 给\(n\)堆石子,每次最多可以从一堆中取\(x\)个,问你\(x = 1 ... n\)时的答案. 解法 经典\(nim\)游戏,找规律知\(sg[i] = i \ mod \ (x+1)\) ...
- Apache Hudi 0.7.0版本重磅发布
重点特性 1. Clustering 0.7.0版本中支持了对Hudi表数据进行Clustering(对数据按照数据特征进行聚簇,以便优化文件大小和数据布局),Clustering提供了更灵活地方式增 ...