• <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算法程序設(shè)計空間

            // 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 閱讀(2391) 評論(0)  編輯 收藏 引用 所屬分類: ACM/ICPC或其他比賽

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

            const int N = 1010;
            double mat[N][N]; //增廣矩陣
            double ans[N];
            int n; //未知數(shù)個數(shù)
            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热热久久这里只有精品68| 久久久久亚洲AV成人网| 久久久久亚洲av无码专区| 精品久久久无码人妻中文字幕豆芽| 久久久久久人妻无码| 久久亚洲国产成人精品无码区| 久久九九久精品国产免费直播| 国产精品久久久久国产A级| 亚洲国产成人久久一区久久| 精品久久久久久国产| 色播久久人人爽人人爽人人片AV| 久久66热人妻偷产精品9| 久久亚洲精品无码观看不卡| 99久久婷婷免费国产综合精品| 久久久久亚洲AV综合波多野结衣| 久久人人妻人人爽人人爽| 亚洲精品tv久久久久| 久久男人AV资源网站| 一本大道加勒比久久综合| 久久久免费精品re6| 久久精品国产亚洲αv忘忧草| 久久久无码精品亚洲日韩软件| 国产成人无码久久久精品一| 亚洲狠狠婷婷综合久久蜜芽| 国产一区二区久久久| 无码人妻久久一区二区三区蜜桃| 青青青伊人色综合久久| 久久精品国产精品青草| 国产一级持黄大片99久久| 久久久久亚洲av无码专区 | 久久无码人妻一区二区三区午夜| 欧美国产精品久久高清| 国产高潮国产高潮久久久91| 久久久久四虎国产精品| 东京热TOKYO综合久久精品| 久久亚洲日韩精品一区二区三区| 漂亮人妻被中出中文字幕久久| 欧美日韩精品久久久免费观看| 色综合久久中文字幕综合网| 性做久久久久久久久| 久久精品一区二区三区AV|