• <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 閱讀(363) 評論(0)  編輯 收藏 引用
            奇米影视7777久久精品人人爽| 亚洲色欲久久久综合网| 美女写真久久影院| 亚洲第一永久AV网站久久精品男人的天堂AV| 久久久国产精华液| 国内精品久久久久影院日本 | 国产精品免费久久| 久久人人添人人爽添人人片牛牛| 国内精品久久久久影院一蜜桃| 精品一久久香蕉国产线看播放| 亚洲中文字幕无码久久综合网| 精品国产青草久久久久福利| 久久青青草原精品国产| 久久强奷乱码老熟女| 久久99国产精品久久久| 狠狠综合久久AV一区二区三区 | 国产欧美一区二区久久| 久久久久免费精品国产| 日韩AV毛片精品久久久| 国内精品久久久久久久亚洲| 亚洲精品美女久久久久99| 中文精品99久久国产| 久久国产综合精品五月天| 亚洲国产二区三区久久| 热99re久久国超精品首页| 一本色道久久综合狠狠躁| 一极黄色视频久久网站| 久久天天日天天操综合伊人av| 国产激情久久久久影院小草| 九九99精品久久久久久| 久久亚洲精品视频| 久久精品国产半推半就| 精品久久久久久国产潘金莲| 精品久久久久香蕉网| 久久超碰97人人做人人爱| 久久婷婷五月综合色高清| 国产精品久久午夜夜伦鲁鲁| 久久国产热精品波多野结衣AV | 久久亚洲中文字幕精品一区| 欧美精品福利视频一区二区三区久久久精品| 国产成人无码精品久久久久免费 |