周三

手打高斯定理(理解)

概率,期望dp也算是入门了

double a[maxn][maxn],x[maxn];
int equ,val;
bool Gauss(){
    for(int k=0,cal=0;k<equ,cal<val;k++,cal++){
        int max_r=k;
        for(int i=k+1;i<equ;i++){
            if(fabs(a[max_r][cal])<fabs(a[i][cal]))max_r=i;
        }
        if(fabs(a[max_r][cal])<eps)return 0;
        if(max_r!=k){
            swap(x[k],x[max_r]);
            for(int i=cal;i<val;i++)swap(a[k][i],a[max_r][i]);
        }
        x[k]/=a[k][cal];
        for(int i=cal+1;i<val;i++)a[k][i]/=a[k][cal];
        a[k][cal]=1;
        for(int i=0;i<equ;i++){
            if(i!=k){
                x[i]-=x[k]*a[i][cal];
                for(int j=cal+1;j<val;j++)a[i][j]-=a[i][cal]*a[k][j];
                a[i][cal]=0;
            }
        }
    }
}
View Code
原文地址:https://www.cnblogs.com/Amphetamine/p/7060727.html