高斯消元模板
这一份代码能够判断线性方程组是否有解,无法判断是否有无穷多解
int gauss(){
for(int i=1;i<=n;i++){
int r=i;
for(int k=i;k<=n;k++){
if(fabs(a[k][i])>fabs(a[r][i])){
r=k;
}
}
if(r!=i)swap(a[r],a[i]);
if(fabs(a[i][i])<eps)return 0;
for(int j=n+1;j>=i;j--){
a[i][j]/=a[i][i];
}
for(int k=i+1;k<=n;k++){
double div=a[k][i];
for(int j=n+1;j>=i;j--){
a[k][j]-=div*a[i][j];
}
}
}
ans[n]=a[n][n+1];
for(int i=n-1;i>=1;i--){
for(int j=i+1;j<=n;j++){
a[i][n+1]-=a[i][j]*a[j][n+1];
}
ans[i]=a[i][n+1];
}
return 1;
}

浙公网安备 33010602011771号