http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4835

由题意,有:

(x1-x11)^2 + (x2-x12)^2 ... = D[1]^2

(x1-x21)^2 + (x2-x22)^2 ... = D[2]^2

...

(x1-x12,1)^2 + (x2-x12,2)^2 ... = D[12]^2

所以

-x1^2 + x11 * x1 .... = (-D[12] ^ 2 + x11` ^ 2 + x12 ^ 2 ....)/2

-x1^2 + x21 * x1 .... = (-D[22] ^ 2 + x21 ^ 2 + x22 ^ 2 ....)/2

高斯消元即可

#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;
const int maxn = 15;
double g[maxn][maxn],x[maxn];
double eps = 1e-8;
void debug(){
for(int i=0;i<12;i++){
for(int j=0;j<12;j++){
printf("%.2f%c",g[i][j],j==11?'\n':' ');
}
}
}
void gauss(){
memset(x,0,sizeof x);
for(int i = 0;i < 12;i++){
g[i][11] = -g[i][11] * g[i][11];
}
for(int i = 0;i < 12;i++){
for(int j = 0;j < 11;j++){
g[i][11] += g[i][j] * g[i][j];
}
}
for(int i = 0;i < 12;i++){
g[i][11] /= 2;
} for(int i = 0;i < 11;i++){
for(int j = 0;j < 12;j++){
g[i][j] -= g[11][j];
}
}
for(int i = 0;i < 11;i++){
//puts("begin");
// debug();
int maxr = i;
for(int j = i;j < 11;j++){
if(fabs(g[j][i]) > fabs(g[maxr][i])){
maxr=j;
}
}
if(maxr != i){
for(int j = i;j < 12;j++){
swap(g[i][j],g[maxr][j]);
}
}
// puts("after swap");
// debug();
for(int j = i + 1;j < 11;j++){
if(g[j][i] != 0){
double tmp = -g[j][i]/g[i][i];
for(int k = i;k < 12;k++){
g[j][k] += tmp * g[i][k];
}
}
}
}
for(int i = 10;i >= 0;i--){
double tmp = 0;
for(int j = i + 1;j < 11;j++){
tmp += g[i][j] * x[j];
}
x[i] = (g[i][11] - tmp) / g[i][i];
}
}
int main(){
int T;
scanf("%d",&T);
while(T--){
for(int i = 0;i < 12;i++){
for(int j = 0;j < 12;j++){
scanf("%lf",g[i]+j);
}
}
gauss();
for(int i=0;i<11;i++){
printf("%.2f%c",fabs(x[i])<eps?0:x[i],i==10?'\n':' ');
}
}
}

ZOJ 3645 BiliBili 高斯消元 难度:1的更多相关文章

  1. ZOJ 3645 BiliBili(高斯消元)

    Shirai Kuroko is a Senior One student. Almost everyone in Academy City have super powers, and Kuroko ...

  2. 「ZOJ 1354」Extended Lights Out「高斯消元」

    题意:给定一个\(5\times 6\)的棋盘的\(01\)状态,每次操作可以使它自己和周围四个格子状态取反,求如何操作,输出一个\(01\)矩阵 题解:这题可以通过枚举第一行的状态然后剩下递推来做, ...

  3. POJ1487 Single-Player Games 高斯消元

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - POJ1487 题解概括 给出多个树形结构,由小写字母和数字表示,每个小写字母表示一棵小树.现在,以a为根节点 ...

  4. 【BZOJ-3143】游走 高斯消元 + 概率期望

    3143: [Hnoi2013]游走 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2264  Solved: 987[Submit][Status] ...

  5. 【BZOJ-3270】博物馆 高斯消元 + 概率期望

    3270: 博物馆 Time Limit: 30 Sec  Memory Limit: 128 MBSubmit: 292  Solved: 158[Submit][Status][Discuss] ...

  6. *POJ 1222 高斯消元

    EXTENDED LIGHTS OUT Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 9612   Accepted: 62 ...

  7. [bzoj1013][JSOI2008][球形空间产生器sphere] (高斯消元)

    Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球 面上n+1个点的坐标,你需要以最快的速度确定这个n维球体的球心坐标,以便于摧 ...

  8. hihoCoder 1196 高斯消元·二

    Description 一个黑白网格,点一次会改变这个以及与其连通的其他方格的颜色,求最少点击次数使得所有全部变成黑色. Sol 高斯消元解异或方程组. 先建立一个方程组. \(x_i\) 表示这个点 ...

  9. BZOJ 2844 albus就是要第一个出场 ——高斯消元 线性基

    [题目分析] 高斯消元求线性基. 题目本身不难,但是两种维护线性基的方法引起了我的思考. void gauss(){ k=n; F(i,1,n){ F(j,i+1,n) if (a[j]>a[i ...

随机推荐

  1. [转载] tmux 使用指南

    原文: https://danielmiessler.com/study/tmux/ tmux的用法和screen类似, 比screen好用一些, 不过需要单独安装

  2. Python学习(18)面向对象

    目录 Python 面向对象 创建实例对象 Python内置类属性 Pyyhon对象销毁(垃圾回收) 类属性与方法 Python 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此 ...

  3. Python学习(13)函数

    目录 Python 函数 函数调用 匿名函数 return语句 变量作用域 Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复 ...

  4. Mysql 系统参数 系统变量 状态变量

    1.系统参数,也就是命令行选项,执行命令的时候,后面跟的参数,系统参数很多,不可能每次执行程序的时候,指定这些参数.这些参数写在配置文件(Windows下是my.ini,Linux是my.cnf),执 ...

  5. asp.net实现大文件上传

    需要下载NeatUpload插件 上传页面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile ...

  6. ElasticSearch(ES)和solr的关系和区别

    可以参考这篇文章:http://www.cnblogs.com/chowmin/articles/4629220.html Solr 2004年诞生(当时是Solar). ElasticSearch ...

  7. iOS开发之 Xcode svn更新代码后,不能打开.xcodeproj,因为该项目文件不能被解析

    http://www.cfanz.cn/?c=article&a=read&id=41565 解决方法:    1.对.xcodeproj 文件右键,显示包内容 2.双击打开 proj ...

  8. openfire升级指南

    原文:http://www.liuhaihua.cn/archives/355.html 升级Openfire是和从头开始安装Openfire几乎一样简单.作为升级过程的一部分,它强烈建议您先备份当前 ...

  9. jsp实时显示后台批处理进度 - out分块,简单的长连接方式

    这两天在实现一个批处理操作,但是想让前台实时显示后台批处理进度,本想着用复杂一些的框架可以实现异步信息调用 但是鉴于是内部管理系统,且只有一两个人用到这个功能,所以做了一个简单的长连接方式的实时响应 ...

  10. 每一个可以移动的棋子都要移动——Every-SG 游戏

    先看一个问题 HDU 3595 GG and MM (Every_SG博弈) 题目有N个游戏同时进行,每个游戏有两堆石子,每次从个数多的堆中取走数量小的数量的整数倍的石子.取最后一次的获胜.并且N个游 ...