• <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 閱讀(1583) 評(píng)論(4)  編輯 收藏 引用

            評(píng)論

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

            看著這種代碼我就會(huì)頭暈。能不能寫點(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   博問   Chat2DB   管理


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

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(6)

            隨筆檔案

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            欧洲成人午夜精品无码区久久| 久久精品国产亚洲AV电影| 99久久久精品免费观看国产| 久久精品极品盛宴观看| 国产精久久一区二区三区| 狠狠色丁香婷婷综合久久来 | 国产精品一区二区久久精品涩爱| 国产激情久久久久影院小草| 久久电影网一区| 久久亚洲欧美日本精品| 日韩精品久久久久久| 99久久精品免费国产大片| 91精品婷婷国产综合久久| 国产精品99久久精品爆乳| 久久久久九九精品影院| 亚洲国产精品嫩草影院久久| 综合久久一区二区三区| 久久婷婷五月综合97色直播| 伊人久久久AV老熟妇色| 久久久一本精品99久久精品66| 国产国产成人精品久久| 久久综合中文字幕| 久久久久国产日韩精品网站| 亚洲精品无码久久毛片| 久久精品国产久精国产果冻传媒 | 久久最近最新中文字幕大全| 欧美激情精品久久久久| 久久久久久久久久久免费精品| 日韩精品无码久久一区二区三| 2021久久精品免费观看| 久久精品国产亚洲77777| 久久综合久久综合久久| 久久天天躁狠狠躁夜夜2020一| 国产精品对白刺激久久久| 久久久久99精品成人片牛牛影视| 囯产极品美女高潮无套久久久 | 午夜精品久久久内射近拍高清 | 中文字幕精品无码久久久久久3D日动漫| 日产精品久久久久久久| 一本久久久久久久| 一本久久a久久精品亚洲|