• <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 閱讀(356) 評論(0)  編輯 收藏 引用
            99999久久久久久亚洲| 久久久噜噜噜久久熟女AA片| 无码人妻久久久一区二区三区| 国产精品久久新婚兰兰| 久久久久久久波多野结衣高潮| 亚洲精品美女久久久久99| 国内精品久久久久国产盗摄| 亚洲人成电影网站久久| 国产精品99久久免费观看| 亚洲欧美另类日本久久国产真实乱对白| 一本色综合久久| 99久久免费国产精精品| 亚洲人成网站999久久久综合| 久久精品a亚洲国产v高清不卡| 午夜精品久久影院蜜桃| 久久国产精品99国产精| 久久伊人五月丁香狠狠色| 久久r热这里有精品视频| 久久久久人妻一区二区三区| 情人伊人久久综合亚洲| 亚洲愉拍99热成人精品热久久| 国内精品久久久久久麻豆| 国产V亚洲V天堂无码久久久| 三级三级久久三级久久 | 伊人久久精品线影院| 99蜜桃臀久久久欧美精品网站| 国产成人久久久精品二区三区| 久久久久久久久久久久中文字幕| 性高朝久久久久久久久久| 品成人欧美大片久久国产欧美...| 国产成人久久精品一区二区三区 | 青青草国产精品久久久久| 久久久国产精华液| 欧美一区二区久久精品| 日韩美女18网站久久精品| 久久99精品久久久久久水蜜桃 | 日韩美女18网站久久精品| 免费一级做a爰片久久毛片潮| 久久91这里精品国产2020| 久久青草国产精品一区| 国产亚州精品女人久久久久久 |