首先,乙個重要的概念:n個n元一次(不同)方程組可以解出唯一解
so 題意:給定乙個線性方程組,對其求解(qaq)
高斯消元:首先,把未知數放左邊,常數放右邊,然後提取係數放在矩陣裡
找到當前元的係數最大的式子放在i的位置(當前行)(主要是為了判斷無解,放不放都行)
i行當前元的係數化一(i行所有數/=當前元的係數)
最後,對於每一行(除了i行)的數,減等於這一行當前元的係數乘上第i行對應位置係數
那麼,最後的矩陣
1 0 0 x
0 1 0 y
0 0 1. z
見**:
#include #define ll long longinline llin()
const
int maxn = 120
;const
double eps = 1e-5
;double
a[maxn][maxn];
intn, m;
intmain()
}for(int i = 1; i <= n; i++) printf("
%.2f\n
", a[i][m]);
return0;
}
P3389 模板 高斯消元法
gauss消元 給定乙個線性方程組,對其求解 第一行,乙個正整數 nnn 第二至 n 1n 1n 1行,每行 n 1n 1n 1 個整數,為a1,a2 an a 1,a 2 cdots a na1 a2 an 和 bbb,代表一組方程。共n行,每行乙個數,第 iii行為 xix ixi 保留2位小數...
P3389 模板 高斯消元法
傳送門 把所有方程放到乙個二維陣列裡 樣例的陣列為 1,3,4,5 1,4,7,3 9,3,2,2 考慮乙個乙個消元 拿乙個方程出來,把未知數 x 的係數化成1 用加減消元消去其他方程的 x 然後再消下乙個未知數 最後乙個未知數消完後再把值往上乙個方程代入 最後每個未知數都求出來了 如果消 x 的時...
P3389 模板 高斯消元法(模板,高斯消元法)
思路 沒學線代的可以去學一下,很簡單的。直接看落谷的解析吧,感覺很好了。include include const double eps 1e 8 double b 110 110 int n int main for register int i 0 iint pivot i for regist...