• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            oyjpArt ACM/ICPC算法程序設計空間

            // I am new in programming, welcome to my blog
            I am oyjpart(alpc12, 四城)
            posts - 224, comments - 694, trackbacks - 0, articles - 6

            高斯消元

            Posted on 2007-05-28 19:26 oyjpart 閱讀(2384) 評論(0)  編輯 收藏 引用 所屬分類: ACM/ICPC或其他比賽

            一直都沒寫過高斯消元 今天數值分析老師說要寫一個交上去 我就寫了一個 呵呵
            //by OyjpArt 
            //使用方法:
            //ok = 0;
            //solve(0);

            const int N = 1010;
            double mat[N][N]; //增廣矩陣
            double ans[N];
            int n; //未知數個數
            const double EPS = 1e-7;
            bool ok;

            int dblcmp(double a) { if(fabs(a) < EPS) return 0; if(a < 0) return -1; return 1; }

            void solve(int x) {
             if(x == n-1) {
              if(dblcmp(mat[x][x]) == 0) ok = 0;
              else ans[x] = mat[x][x+1] / mat[x][x];
              return;
             }
             int i, j;
             for(i = x; i < n && dblcmp(mat[i][x]) == 0; i++);
             if(i == n) { ok = 0; return; }
             if(i != x) {
              double tmp[N];
              memcpy(tmp, mat[x], (n+1) * sizeof(double));
              memcpy(mat[x], mat[i], (n+1) * sizeof(double));
              memcpy(mat[i], tmp, (n+1) * sizeof(double));
             }
             for(i = x+1; i < n; i++) {
              if(dblcmp(mat[i][x]) == 0) continue;
              double m = mat[x][x] / mat[i][x];
              for(j = x; j < n + 1; j++)
               mat[i][j] = mat[i][j] * m - mat[x][j];
             }
             solve(x+1);
             double sum = mat[x][n];
             for(i = x+1; i < n; i++) sum -= mat[x][i] * ans[i];
             ans[x] = sum / mat[x][x];
            }

            一本大道加勒比久久综合| 亚洲欧洲日产国码无码久久99| 久久精品国产99国产电影网| 国产成人精品久久亚洲高清不卡| 午夜福利91久久福利| 久久亚洲AV成人出白浆无码国产| 国产精品欧美亚洲韩国日本久久| 久久国产AVJUST麻豆| 99久久免费只有精品国产| 久久精品人妻中文系列| 91久久精品国产91性色也| 色综合久久夜色精品国产| 久久精品国产精品国产精品污 | 国产精品免费福利久久| 久久久久国产亚洲AV麻豆| 日本人妻丰满熟妇久久久久久| 欧美一级久久久久久久大片| 久久免费视频网站| 97久久超碰国产精品旧版| 日韩欧美亚洲综合久久| 久久综合一区二区无码| 一级做a爰片久久毛片16| 国产一级做a爰片久久毛片| 日韩精品久久久久久久电影蜜臀| 一本大道久久香蕉成人网| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 久久精品国产亚洲麻豆| 精品国产一区二区三区久久久狼| 久久久亚洲裙底偷窥综合| 天天影视色香欲综合久久| 亚洲国产成人久久综合区| 亚洲国产成人久久精品99| 久久性生大片免费观看性| 亚洲国产精品一区二区三区久久| 久久精品成人| 亚州日韩精品专区久久久| 亚洲精品乱码久久久久久蜜桃| 久久伊人精品青青草原日本| 久久亚洲国产成人影院| 久久亚洲日韩精品一区二区三区| 97热久久免费频精品99|