洛谷P3389 【模板】高斯消元法 高斯消元模板题

题目链接:https://www.luogu.com.cn/problem/P3389

题目大意:略

解题思路:略(因为是模板题)

示例程序:

#include <bits/stdc++.h>
using namespace std;
const int maxn = 110;
const double eps = 1e-7;
int n;
double a[maxn][maxn];

bool gauss() {
    for (int i = 1; i <= n; i++) {
        int r = i;
        for (int j = i+1; j <= n; j++)
            if (abs(a[j][i]) > abs(a[r][i])) r = j;
        if (abs(a[r][i]) < eps) return false;
        for (int j = 1; j <= n+1; j++)
            swap(a[r][j], a[i][j]);
        for (int j = n+1; j >= i; j--)
            a[i][j] /= a[i][i];
        assert(abs(a[i][i] - 1) < eps);
        for (int j = 1; j <= n; j++) {
            if (j == i || abs(a[j][i]) < eps) continue;
            double tmp = a[j][i];
            for (int k = i; k <= n+1; k++)
                a[j][k] -= tmp * a[i][k];
        }
    }
    return true;
}

int main() {
    scanf("%d", &n);
    for (int i = 1; i <= n; i++)
        for (int j = 1; j <= n+1; j++)
            scanf("%lf", &a[i][j]);
    if (!gauss()) puts("No Solution");
    else {
        for (int i = 1; i <= n; i++)
            printf("%.2lf\n", a[i][n+1]);
    }
    return 0;
}

posted @   quanjun  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
历史上的今天:
2023-12-15 洛谷P1824 进击的奶牛 题解 二分答案
2023-12-15 CF1784C Monsters (hard version) 题解 线段树
2022-12-15 洛谷P1486 [NOI2004] 郁闷的出纳员 题解 splay tree
点击右上角即可分享
微信分享提示