1013: [JSOI2008]球形空间产生器sphere 高斯消元
来源:互联网 发布:尹成c语言网盘 2016 编辑:程序博客网 时间:2024/06/05 09:53
第一次写高斯消元。
高斯消元就是通过不断的消去然后回代解n元一次方程组。
本题可以根据距离得到n个方程,然后上gauss就好了。
#include<cstdio>#include<cstring>#include<cmath>#define eps 1e-6using namespace std;int n;double f[15];double a[15][15];inline double sqr(double x){ return x*x;}void gauss(){ int y; double t; for (int i=1;i<=n;i++) { for (y=i;y<=n;y++) if (fabs(a[y][i])>eps) break; if (y>n) continue; if (y!=i) for (int j=1;j<=n+1;j++) swap(a[i][j],a[y][j]); t=a[i][i]; for (int j=1;j<=n+1;j++) a[i][j]/=t; for (int j=1;j<=n;j++) if (j!=i) { t=a[j][i]; for (int k=1;k<=n+1;k++) a[j][k]-=t*a[i][k]; } }}int main(){ scanf("%d",&n); for (int i=1;i<=n;i++) scanf("%lf",&f[i]); for (int i=1;i<=n;i++) for (int j=1;j<=n;j++) { double t; scanf("%lf",&t); a[i][j]=2*(t-f[j]); a[i][n+1]+=sqr(t)-sqr(f[j]); } gauss(); for (int i=1;i<n;i++) printf("%.3lf ",a[i][n+1]); printf("%.3lf\n",a[n][n+1]); return 0;}
0 0
- 1013: [JSOI2008]球形空间产生器sphere (高斯消元)
- 1013: [JSOI2008]球形空间产生器sphere 高斯消元
- BZOJ 1013: [JSOI2008]球形空间产生器sphere
- 【BZOJ 1013】 [JSOI2008]球形空间产生器sphere
- 1013: [JSOI2008]球形空间产生器sphere
- bzoj 1013: [JSOI2008]球形空间产生器sphere
- BZOJ 1013: [JSOI2008]球形空间产生器sphere
- BZOJ 1013 [JSOI2008]球形空间产生器sphere
- 1013: [JSOI2008]球形空间产生器sphere
- BZOJ 1013 [JSOI2008]球形空间产生器sphere
- bzoj 1013 [JSOI2008]球形空间产生器sphere
- 1013: [JSOI2008]球形空间产生器sphere
- 【BZOJ 1013】 [JSOI2008]球形空间产生器sphere
- BZOJ 1013 [JSOI2008] 球形空间产生器sphere
- bzoj 1013 [JSOI2008]球形空间产生器sphere
- 1013: [JSOI2008]球形空间产生器sphere
- 1013: [JSOI2008]球形空间产生器sphere
- bzoj 1013 [JSOI2008]球形空间产生器sphere
- AFNetworking3.0的使用
- diff(1)
- GIS+=地理信息+容器技术(4)——Docker运行
- replace替换,js与C#的区别
- HiveSQL备忘
- 1013: [JSOI2008]球形空间产生器sphere 高斯消元
- 1.5.3 GROUP BY子句
- iOS-非父子控制器跳转(如:从某一导航控制器的子页面跳转到另一个tabbar控制的页面)
- 1.5.4 HAVING子句
- 感知神经网络--教学
- 推荐!国外程序员整理的 C++ 资源大全
- 控件的简单属性有时候可以解决不小麻烦 layout_alignRight
- QT中的TCP方法
- 1.6 INSERT语句