• <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>
            隨筆-65  評論-6  文章-0  trackbacks-0
             1 //還是轉移方程搞懂了就沒問題 
             2 #include <iostream>
             3 using namespace std;
             4 #define MaxSize 205
             5 #define inf 0x7ffffff
             6 int f[MaxSize],dp[33][MaxSize],cost[MaxSize][MaxSize] ;
             7 //餐館位置、前j個餐館設立i個倉庫的最短距離、第i個餐館到第j個餐館的設立一個倉庫的最短距離
             8 inline int abs(int a){
             9     if(a<0)    a=-a;
            10     return a;
            11 }
            12 inline int min(int a,int b){
            13     return a<b?a:b;
            14 }
            15 int main(){
            16     //freopen("in.txt","r",stdin);
            17     int i,j,w,n,k,no=0;
            18     while (scanf("%d %d",&n,&k),(n||k)){
            19         for(i=1;i<=n;i++)
            20             scanf("%d",&f[i]);
            21         for(i=1;i<=n;i++)
            22             for(j=i;j<=n;j++){
            23                 int pos=(i+j)>>1,temp1=0;
            24                 for(w=i;w<=j;w++)
            25                     temp1+=abs(f[w]-f[pos]);
            26                 if(pos&1){
            27                     int temp2=0;            
            28                     for(w=i;w<=j;w++)
            29                         temp2+=abs(f[w]-f[pos+1]);
            30                     cost[i][j]=min(temp1,temp2);
            31                 }
            32                 else
            33                     cost[i][j]=temp1;
            34             }
            35         memset(dp,0,sizeof(dp));
            36         for(i=1;i<=n;i++)
            37             dp[1][i]=cost[1][i];
            38         for(i=2;i<=k;i++)
            39             for(j=i;j<=n;j++){
            40                 dp[i][j]=inf;
            41                 for(w=i-1;w<j;w++)
            42                     dp[i][j]=min(dp[i][j],dp[i-1][w]+cost[w+1][j]);
            43             }
            44                 
            45         printf("Chain %d\n",++no);
            46         printf("Total distance sum = %d\n\n",dp[k][n]);
            47     }
            48     return 0;
            49 }
            posted on 2012-07-11 11:10 Leo.W 閱讀(357) 評論(0)  編輯 收藏 引用
            久久精品国产福利国产秒| 曰曰摸天天摸人人看久久久| 精品久久久久久无码国产| 国产福利电影一区二区三区,免费久久久久久久精 | 久久久久九国产精品| 最新久久免费视频| 狠狠干狠狠久久| 久久精品国产2020| 日本福利片国产午夜久久| 99久久夜色精品国产网站| 亚洲国产精品久久| 亚洲AV无码成人网站久久精品大| 国产亚州精品女人久久久久久 | 人妻无码久久精品| 国产精品美女久久久久久2018| 99久久99久久精品国产| 久久综合给合久久狠狠狠97色| 国产激情久久久久影院小草| 久久人爽人人爽人人片AV| 中文字幕久久亚洲一区| 国产精品欧美亚洲韩国日本久久| 中文字幕无码精品亚洲资源网久久| 国产精品VIDEOSSEX久久发布 | 久久国产色av免费看| 日本国产精品久久| 品成人欧美大片久久国产欧美...| 丰满少妇人妻久久久久久| 久久午夜无码鲁丝片秋霞 | 久久精品亚洲精品国产色婷 | 国产69精品久久久久9999APGF| 国产成人久久精品麻豆一区| 国产精品无码久久综合| 婷婷久久香蕉五月综合加勒比| 中文字幕无码久久人妻| 热久久视久久精品18| 久久亚洲国产成人影院| 久久青青草视频| 精品久久久久久国产| 亚洲va久久久噜噜噜久久天堂| 东方aⅴ免费观看久久av| 乱亲女H秽乱长久久久|