• <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>

            Toj Lawrence of Arabia 四邊形不等式優(yōu)化

             1 /* 
             2  * File:   Toj 3305.cpp
             3  * Author: GongZhi
             4  * Problem: 動(dòng)態(tài)規(guī)劃,四邊形不等式優(yōu)化
             5  * Created on 2009年7月27日, 上午12:00
             6  */
             7 
             8 #include <stdlib.h>
             9 #include <string.h>
            10 #include <iostream>
            11 #include <string>
            12 #include <vector>
            13 #include <map>
            14 #include <queue>
            15 using namespace std;
            16 
            17 /*
            18  *
            19  */
            20 #define MAXN 1100
            21 long long a[MAXN], sum1[MAXN], sum2[MAXN], f[MAXN][MAXN], w[MAXN][MAXN], p[MAXN][MAXN];
            22 
            23 int main() {
            24     int n, m, i, j, t, k;
            25     while (scanf("%d%d"&n, &m), n) {
            26         m++;
            27         for (i = 1; i <= n; i++)scanf("%d"&a[i]);
            28         sum1[0= 0;
            29         sum2[0= 0;
            30         for (i = 1; i <= n; i++)sum1[i] = sum1[i - 1+ a[i];
            31         for (i = 1; i <= n; i++)sum2[i] = sum2[i - 1+ a[i] * a[i];
            32         for (i = 1; i <= n; i++)
            33             for (j = 1; j <= n; j++)w[i][j] = ((sum1[j] - sum1[i - 1])*(sum1[j] - sum1[i - 1])-(sum2[j] - sum2[i - 1])) / 2;
            34         for (i = 1; i <= n; i++) {
            35             f[1][i] = w[1][i];
            36             p[1][i] = 1;
            37         }
            38         for (i = 2; i <= m; i++) {
            39             j = n;
            40             f[i][j] = 100000000000000ll;
            41             for (k = p[i - 1][j]; k <= j - 1; k++)
            42                 if (f[i - 1][k] + w[k + 1][j] < f[i][j]) {
            43                     f[i][j] = f[i - 1][k] + w[k + 1][j];
            44                     p[i][j] = k;
            45                 }
            46             for (j = n - 1; j >= 1; j--) {
            47                 f[i][j] = 100000000000000ll;
            48                 for (k = p[i - 1][j]; k <= p[i][j + 1]; k++)
            49                     if (f[i - 1][k] + w[k + 1][j] < f[i][j]) {
            50                         f[i][j] = f[i - 1][k] + w[k + 1][j];
            51                         p[i][j] = k;
            52                     }
            53             }
            54         }
            55         printf("%d\n", f[m][n]);
            56     }
            57     return 0;
            58 }
            59 
            60 

            posted on 2009-07-27 00:44 gong 閱讀(1600) 評(píng)論(4)  編輯 收藏 引用

            評(píng)論

            # re: Toj Lawrence of Arabia 四邊形不等式優(yōu)化 2009-07-27 09:48 李錦俊

            看著這種代碼我就會(huì)頭暈。能不能寫(xiě)點(diǎn)注釋?另外建議少用點(diǎn)magic number。
              回復(fù)  更多評(píng)論   

            # re: Toj Lawrence of Arabia 四邊形不等式優(yōu)化 2009-07-29 21:21 Vincent

            贊一個(gè)  回復(fù)  更多評(píng)論   

            # re: Toj Lawrence of Arabia 四邊形不等式優(yōu)化 2009-09-07 23:50 baiqi2piao

            很贊啊。8錯(cuò)的代碼  回復(fù)  更多評(píng)論   

            # re: Toj Lawrence of Arabia 四邊形不等式優(yōu)化 2009-10-04 03:37 XsugarX

            受教了~哈哈哈  回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            <2009年7月>
            2829301234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(6)

            隨筆檔案

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久精品国产男包| 精品久久久久香蕉网| 久久夜色tv网站| 久久se精品一区二区影院| 亚洲国产精品成人久久蜜臀 | 久久中文字幕人妻丝袜| 一本色综合网久久| 99久久国语露脸精品国产| 久久人人爽人人爽人人片AV东京热| 亚洲午夜久久久| 久久人人爽人人爽人人片av高请 | 99国产欧美精品久久久蜜芽 | 久久久久99这里有精品10 | 久久996热精品xxxx| 久久久国产精华液| 51久久夜色精品国产| 2021少妇久久久久久久久久| 狠狠色丁香久久婷婷综| 久久国产精品无码一区二区三区 | 国产L精品国产亚洲区久久| 精品久久久久久久无码 | 久久久噜噜噜久久熟女AA片| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 欧美大香线蕉线伊人久久| 亚洲AV伊人久久青青草原| 国产 亚洲 欧美 另类 久久| 俺来也俺去啦久久综合网| 国产成人久久精品一区二区三区 | 中文字幕无码久久精品青草| 国产亚洲精午夜久久久久久| 久久青青草原精品影院| 久久九九精品99国产精品| 午夜天堂精品久久久久| www.久久99| 国产亚洲婷婷香蕉久久精品| 久久人人爽爽爽人久久久| 久久99精品国产99久久| 韩国无遮挡三级久久| 国产精品久久久久久久久久免费| 久久99国产精品成人欧美| 国产精品青草久久久久福利99|