洛谷 P4035
#include <bits/stdc++.h>
using namespace std;
const int N = 250;
int n;
double a[N][N], x[N], p[N][N], q[N][N];
void gauss()
{
for (int i = 1; i <= n; i ++)
{
for (int j = i; j <= n; j ++)
if (a[j][i])
{
for (int k = 1; k <= n + 1; k ++)
swap (a[i][k], a[j][k]);
break;
}
if (a[i][i] == 0)
{
cout << "No Solution\n";
exit(1);
}
for (int j = i + 1; j <= n; j ++)
{
double ratio = a[j][i] / a[i][i];
for (int k = 1; k <= n + 1; k ++)
a[j][k] -= a[i][k] * ratio;
}
}
x[n] = a[n][n + 1] / a[n][n];
for (int i = n; i; i --)
{
for (int j = i + 1; j <= n; j ++)
a[i][n + 1] -= a[i][j] * x[j];
x[i] = a[i][n + 1] / a[i][i];
}
}
signed main()
{
cin >> n;
for (int i = 1; i <= n + 1; i ++)
for (int j = 1; j <= n; j ++)
cin >> p[i][j];
for (int i = 1; i <= n; i ++)
for (int j = 1; j <= n; j ++)
{
a[i][j] = 2 * (p[i][j] - p[i + 1][j]);
a[i][n + 1] += p[i][j] * p[i][j] - p[i + 1][j] * p[i + 1][j];
}
gauss();
for (int i = 1; i <= n; i ++)
printf ("%.3lf%c", x[i], " \n"[i == n]);
return 0;
}
本文来自博客园,作者:yhbqwq,转载请注明原文链接:https://www.cnblogs.com/yhbqwq/p/luogu4035.html,谢谢QwQ
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧