<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 147  文章 - 71  trackbacks - 0
    <2009年12月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(1)

    隨筆分類(146)

    隨筆檔案(147)

    文章分類(28)

    文章檔案(28)

    喜歡的Blog

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    http://acm.fjnu.edu.cn/show?problem_id=1772

    動態規劃:假設前n-1本的取書方案已經解決,單獨考慮第n本的取舍,如果保留第n本增加了已知的不整齊度,則取掉第n本。
    首先要按高度進行排序。
    dp[i][j] //以i結尾,已取好j本書
    初始化:
    dp[1][0]=0;
    for(i=2;i<=n;i++) dp[i][0]=dp[i-1][0]+Math.abs(w[i]-w[i-1]);
    方程:
    dp[i][j]=min{dp[i-p-1][j-p]+abs(w[i]-w[i-p-1])},0<=p<=j,0<=j<=k
    ans=min(dp[n-i][k-i)]) ,0<=i<=k

    import java.util.*;
    import java.io.*;
    import java.math.*;

    public class ACM_1772{
        
        
    public static void main(String rgs[]) throws Exception
        
    {
            BufferedReader stdin 
    = new BufferedReader(new InputStreamReader(System.in));    
            String line 
    = stdin.readLine();
            StringTokenizer st 
    = new StringTokenizer(line);
            
    int n = Integer.parseInt(st.nextToken()); 
            
    int k = Integer.parseInt(st.nextToken());
            
    int i,j,k1,p,tmp;
            
    int[] h = new int[201];
            
    int[] w = new int[201];
            
    for(i=1;i<=n;i++){
                line 
    = stdin.readLine();
                st 
    = new StringTokenizer(line);
                h[i] 
    = Integer.parseInt(st.nextToken());
                w[i] 
    = Integer.parseInt(st.nextToken());
            }
            
            
    for(i=1;i<n;i++){
                k1
    =i;
                
    for(j=i+1;j<=n;j++){
                    
    if(h[k1]>h[j])
                        k1
    =j;
                }

                
    if(k1!=i){
                    tmp
    =h[k1];
                    h[k1]
    =h[i];
                    h[i]
    =tmp;
                    tmp
    =w[k1];
                    w[k1]
    =w[i];
                    w[i]
    =tmp;
                }

            }
            
            
    int[][] dp =new int[201][201];
            dp[
    1][0]=0;
            
    for(i=2;i<=n;i++)
                dp[i][
    0]=dp[i-1][0]+Math.abs(w[i]-w[i-1]);        
            
    for(i=1;i<=n;i++){
                
    for(j=1;j<=k;j++){
                    
    if(j>=i)
                        
    break;                    
                      dp[i][j]
    =0xffffff;
                      
    if(j==i-1)
                          dp[i][j]
    =0;
                      
    else{
                          
    for(p=0;p<=j;p++){
                             tmp
    =dp[i-p-1][j-p];
                             tmp
    =tmp+Math.abs(w[i-p-1]-w[i]);
                             
    if(tmp<dp[i][j])
                                dp[i][j]
    =tmp;
                        }

                    }

                }

            }
            
            
    int min=dp[n][k];
            
    for(i=1;i<=k;i++){
                  
    if(dp[n-i][k-i]<min)
                      min
    =dp[n-i][k-i];
              }

            System.out.println(min);      
        }

    }
    posted on 2009-12-25 20:22 飛翔天使 閱讀(274) 評論(0)  編輯  收藏 所屬分類: ACM
    主站蜘蛛池模板: 亚洲一级片在线观看| 久久国产一片免费观看| 特级av毛片免费观看| 97人妻精品全国免费视频| 亚洲国产午夜中文字幕精品黄网站| 麻豆亚洲AV成人无码久久精品 | 91天堂素人精品系列全集亚洲| 91免费在线视频| 久久青青草原亚洲AV无码麻豆| 亚洲va在线va天堂成人| 曰曰鲁夜夜免费播放视频| 亚洲AV男人的天堂在线观看| 免费的涩涩视频在线播放| 亚洲欧洲国产日韩精品| 99热这里有免费国产精品| 亚洲一级免费毛片| 午夜成人免费视频| 亚洲精品偷拍视频免费观看| 国产亚洲精久久久久久无码| 中文字幕视频免费| 亚洲国产精品福利片在线观看| 特级aaaaaaaaa毛片免费视频| 亚洲无线码一区二区三区| 性xxxx视频免费播放直播| 亚洲一区二区三区久久久久| 国内外成人免费视频| 国产精品偷伦视频免费观看了 | 免费无码av片在线观看| 亚洲大片免费观看| 日本无吗免费一二区| 亚洲人成无码网站在线观看| 免费H网站在线观看的| 色婷婷六月亚洲综合香蕉| 中文字幕免费在线观看| 亚洲Av永久无码精品一区二区| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久久久亚洲?V成人无码| 人妻巨大乳hd免费看| 一本久久综合亚洲鲁鲁五月天| 亚洲七久久之综合七久久| 中文字幕亚洲不卡在线亚瑟|