• <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 閱讀(1585) 評(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)論排行榜

            亚洲?V乱码久久精品蜜桃 | 中文字幕成人精品久久不卡| 狠狠狠色丁香婷婷综合久久俺| 国产福利电影一区二区三区,免费久久久久久久精 | 久久国产精品免费| 亚洲中文字幕无码久久2017| 色综合合久久天天综合绕视看| 久久久国产亚洲精品| 国产午夜久久影院| 久久福利资源国产精品999| 久久久久久a亚洲欧洲aⅴ| 精品无码久久久久国产动漫3d| 欧美亚洲另类久久综合| 久久婷婷色综合一区二区| 久久精品无码专区免费 | 国产精品久久久久久久app | 欧美午夜精品久久久久久浪潮| 久久亚洲AV成人出白浆无码国产| 欧洲性大片xxxxx久久久| 久久久国产精品福利免费| 亚洲精品国精品久久99热一| 亚洲&#228;v永久无码精品天堂久久| 久久婷婷五月综合国产尤物app| 久久久久综合中文字幕 | 亚洲人成伊人成综合网久久久| 久久精品亚洲乱码伦伦中文| 国产国产成人久久精品| 久久久久久久99精品免费观看| 粉嫩小泬无遮挡久久久久久| 性欧美大战久久久久久久久| 久久久久亚洲AV无码观看| 色天使久久综合网天天| 亚洲国产一成久久精品国产成人综合| 久久久久一级精品亚洲国产成人综合AV区| 天天综合久久久网| 93精91精品国产综合久久香蕉| 久久成人精品视频| 精品久久久久久国产免费了| 蜜臀久久99精品久久久久久| 亚洲国产精品狼友中文久久久| 精品无码久久久久国产动漫3d|