bzoj1013题解
【解题思路】
初看以为是二次方程组,但这些方程有相同的右值r2,于是可以化为一次方程组,高斯消元即可。复杂度O(n3)。
化简过程:
假设第i个方程和第j个方程联立,得:
∑(a[i,k]-a[0,k])2=∑(a[j,k]-a[0,k])2
<=>∑(a[i,k]2+a[0,k]2-2*a[i,k]*a[0,k])=∑(a[j,k]2+a[0,k]2-2*a[j,k]*a[0,k])
<=>∑(a[i,k]2-a[j,k]2)=2*∑(a[0,k]*(a[i,k]-a[j,k]))
<=>∑(a[i,k]-a[j,k])a[0,k]=∑(a[i,k]2-a[j,k]2)/2
选取n个线性无关的区间(i,j)联立方程组(我选的是i和i+1),a[0]即是答案向量。
【参考代码】
#include <iomanip>
#include <iostream>
#define REP(I,start,end) for(int I=start;I<=end;I++)
#define PER(I,start,end) for(int I=start;I>=end;I--)
#define REPs(I,start,end,step) for(int I=start;I<=end;I+=step)
#define PERs(I,start,end,step) for(int I=start;I>=end;I-=step)
using namespace std;
template<typename T> T sqr(T n)
{
return n*n;
}
int n;
long double a[][],A[][];
int main()
{
ios::sync_with_stdio(false);
cin>>n;
REP(i,,n+)
REP(j,,n)
cin>>a[i][j];
REP(i,,n)
REP(j,,n)
{
A[i][j]=*(a[i+][j]-a[i][j]);
A[i][]+=sqr(a[i+][j])-sqr(a[i][j]);
}
REP(i,,n-)
REP(j,i+,n)
{
long double _i=A[i][i],_j=A[j][i];
REP(k,,n)
A[j][k]=A[j][k]*_i/_j-A[i][k];
}
PER(i,n,)
REP(j,,i-)
{
long double _i=A[i][i],_j=A[j][i];
REP(k,,i)
A[j][k]=A[j][k]*_i/_j-A[i][k];
}
REP(i,,n-)
cout<<setiosflags(ios::fixed)<<setprecision()<<A[i][]/A[i][i]<<' ';
cout<<setiosflags(ios::fixed)<<setprecision()<<A[n][]/A[n][n]<<endl;
return ;
}
bzoj1013题解的更多相关文章
- LG4035/BZOJ1013 「JSOI2008」球形空间产生器 高斯消元
问题描述 LG4035 BZOJ1013 题解 设答案为\((p_1,p_2,p_3,...,p_n)\) 因为是一个球体,令其半径为\(r\),则有 \[\sum_{i=1}^{n}{(a_i-p_ ...
- BZOJ1013:[JSOI2008]球形空间产生器——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=1013 Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在 ...
- 题解 洛谷P4035/BZOJ1013【[JSOI2008]球形空间产生器】
题目链接在这QvQ "你要求出这个n维球体的球心坐标",这使我想到的解方程...... 先假设n=2,这是一个二维平面.设圆心的坐标为\((x,y)\),有两个坐标\((a_1,b ...
- 【BZOJ1013】球形空间产生器(高斯消元)
[BZOJ1013]球形空间产生器(高斯消元) 题面 Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球 面上n+1个点的坐标, ...
- 【BZOJ1013】【JSOI2008】球形空间产生器 高斯消元
题目描述 有一个\(n\)维空间中的球,告诉你球面上\(n+1\)个点的坐标,求球心的坐标. \(n\leq 10\) 题解 设\(a_{i,j}\)为第\(i\)个点的第\(j\)维坐标,\(i=0 ...
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
随机推荐
- secureCRT The remote system refused the connection.解决办法
使用远程登录工具SecureCRT登陆ubuntu的时候遇到了这个问题: secureCRT The remote system refused the connection 这个问题的原因是是Ubu ...
- vue filters 日期
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Python常用三方库安装
//首先更新pip python -m pip install --upgrade pip //一个类似Matlab的Plot绘制数据图的库. python -m pip install matplo ...
- 开启.NET Core 3时代,DevExpress v19.2.5带你全新启航
DevExpress Universal Subscription(又名DevExpress宇宙版或DXperience Universal Suite)是全球使用广泛的.NET用户界面控件套包,De ...
- classmethod和staticmethod
假设有这么一个 class class Date(object): def __init__(self, day=0, month=0, year=0): self.day = day self.mo ...
- Hbase速览
一.概述 理解为hadoop中的key-value存储,数据按列存储,基于HDFS和Zookeeper 1.应用 2.场景 适用场景: 存储格式:半结构化数据,结构化数据存储,Key-Value存储 ...
- psecurity配置
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- 行业顶级NoSQL成员坐阵,NoSQL数据库专场重点解析!
NoSQL数据库作为数据库市场最重要的组成之一,它的一举一动都影响着成千上万的企业.本专场邀请了行业顶级的NoSQL核心成员与大家共同展望NoSQL数据库的未来,阿里巴巴.MongoDB.Rediss ...
- 1251 client does not support
1.mysql -uroot -p 123456 (用户root,密码123465) 2.use mysql: 3.ALTER USER 'root'@'localhost' IDENT ...
- VirtualBox的源码学习
VMM重要的组件 TRPM (Trap Manager) PGM (Page Manager) REM (Recompiled Execution Manager) EM (Execution Man ...