//Accepted    564 KB    63 ms
 //和hdu1227一样
 //dp[i][j]=min(dp[i][j],dp[k][j-1]+cost[k+1][i])
 //初始化条件,dp[0][0]=0;
 //dp[i][0]=inf;i>=1;
 #include <cstdio>
 #include <cstring>
 #include <iostream>
 using namespace std;
 ;
 ;
 ;
 int cost[imax_n][imax_n];
 int dp[imax_n][imax_P];
 int dis[imax_n];
 int n,P;
 int tabs(int x)
 {
     ) x=-x;
     return x;
 }
 int min(int a,int b)
 {
     return a<b?a:b;
 }
 void getCost()
 {
     ;i<=n;i++)
     {
         for (int j=i;j<=n;j++)
         {
             cost[i][j]=;
             ;
             for (int k=i;k<=j;k++)
             cost[i][j]+=tabs(dis[k]-dis[temp]);
         }
     }
 }
 void Dp()
 {
     getCost();
     ;i<=n;i++)
     ;j<=P;j++)
     dp[i][j]=inf;
     dp[][]=;
     ;i<=n;i++)
     {
         ;j<=P && j<=i;j++)
         {
             ;k<i;k++)
             {
                 dp[i][j]=min(dp[i][j],dp[k][j-]+cost[k+][i]);
             }
         }
     }
     printf("%d\n",dp[n][P]);
 }
 int main()
 {
     while (scanf("%d%d",&n,&P)!=EOF)
     {
         ;i<=n;i++)
         scanf("%d",&dis[i]);
         Dp();
     }
     ;
 }
 //Accepted    564 KB    79 ms
 #include <cstdio>
 #include <cstring>
 #include <iostream>
 using namespace std;
 ;
 ;
 ;
 int cost[imax_n][imax_n];
 int dp[imax_n][imax_P];
 int dis[imax_n];
 int n,P;
 int tabs(int x)
 {
     ) x=-x;
     return x;
 }
 int min(int a,int b)
 {
     return a<b?a:b;
 }
 void getCost()
 {
     ;i<=n;i++)
     {
         for (int j=i;j<=n;j++)
         {
             cost[i][j]=;
             ;
             for (int k=i;k<=j;k++)
             cost[i][j]+=tabs(dis[k]-dis[temp]);
         }
     }
 }
 void Dp()
 {
     getCost();
     ;i<=n;i++)
     dp[i][]=inf;
     dp[][]=;
     ;i<=n;i++)
     {
         ;j<=P && j<=i;j++)
         {
             dp[i][j]=inf;
             ;k<i;k++)
             {
                 dp[i][j]=min(dp[i][j],dp[k][j-]+cost[k+][i]);
             }
         }
     }
     printf("%d\n",dp[n][P]);
 }
 int main()
 {
     while (scanf("%d%d",&n,&P)!=EOF)
     {
         ;i<=n;i++)
         scanf("%d",&dis[i]);
         Dp();
     }
     ;
 }

poj1160 dp的更多相关文章

  1. 区间DP POJ1160村庄邮局问题

    POJ1160 题目大意:一系列村庄在一维坐标系上有序的排列,建设p个邮局,问各个村庄到邮局的最短距离和. 线性区间DP问题 dp数组的值为最短/最优距离 村庄和邮局为限制 dp[i][j]表示前i个 ...

  2. POJ1160 Post Office[序列DP]

    Post Office Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 18680   Accepted: 10075 Des ...

  3. 石子合并(四边形不等式优化dp) POJ1160

    该来的总是要来的———————— 经典问题,石子合并. 对于 f[i][j]= min{f[i][k]+f[k+1][j]+w[i][j]} From 黑书 凸四边形不等式:w[a][c]+w[b][ ...

  4. POJ-1160 Post Office (DP+四边形不等式优化)

    题目大意:有v个村庄成直线排列,要建设p个邮局,为了使每一个村庄到离它最近的邮局的距离之和最小,应该怎样分配邮局的建设,输出最小距离和. 题目分析:定义状态dp(i,j)表示建设 i 个邮局最远覆盖到 ...

  5. POJ1160 Post Office (四边形不等式优化DP)

    There is a straight highway with villages alongside the highway. The highway is represented as an in ...

  6. [POJ1160] Post Office [四边形不等式dp]

    题面: 传送门 思路: dp方程实际上很好想 设$dp\left[i\right]\left[j\right]$表示前$j$个镇子设立$i$个邮局的最小花费 然后状态转移: $dp\left[i\ri ...

  7. POJ1160 Post Office-四边形不等式优化DP

    方程 $\Large f(i,j)=min(f(i-1,k)+w(k+1,j))$ 其中$w(i,j)$表示在$[i,j]$的村庄都去一个邮局的最小距离和 证明w满足四边形不等式 设$w_k(i,j) ...

  8. 【poj1160】 Post Office

    http://poj.org/problem?id=1160 (题目链接) 题意 按照递增顺序给出一条直线上坐标互不相同的n个村庄,要求从中选择p个村庄建立邮局,每个村庄使用离它最近的那个邮局,使得所 ...

  9. DP总结 ——QPH

    常见优化 单调队列 形式 dp[i]=min{f(k)} dp[i]=max{f(k)} 要求 f(k)是关于k的函数 k的范围和i有关 转移方法 维护一个单调递增(减)的队列,可以在两头弹出元素,一 ...

随机推荐

  1. xocde 静态类库 相对路径 与 绝对路径

    xocde 静态类库 相对路径 与 绝对路径 导入别人的 静态类库,通常我直接用鼠标把文件夹拉到了 xcode的项目里面: 这时,导入的静态类库路径变成了,绝对路径:如果你的项目,不换位置那么编译运行 ...

  2. Dorado7检验器失效原因分析

    应用场景: AutoForm1使用包含A.B两个字段的DataType1. A字段不允许为空,并且B字段取值true时A字段需要重新输入,B取其它值时A值不需重新录入. 实现方法:A字段添加了非空检验 ...

  3. [转]ebkit内核浏览器的Linear Gradients (线性渐变)

    转自:http://www.css88.com/archives/tag/webkit-gradient webkit内核的safari. Chrome的Linear Gradients (线性渐变) ...

  4. hdu----(5053)the Sum of Cube(签到题,水体)

    the Sum of Cube Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  5. hdu---(2604)Queuing(矩阵快速幂)

    Queuing Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  6. 预处器的对比——Sass、LESS.

    发挥CSS预处器的作用是一种很有挑战性的事情.CSS预处器有不同的语言,有不同的语法和功能. 不同CSS预处器的蛮量.功能以及他们的好处——Sass.LESS 介绍 CSS预处理器是一种语言,用来编写 ...

  7. juery 选择器 选择多个元素

    使用,号: $("#goodSource,#mailState") 选择了id为goodSource或者mailState的元素,当两者之间有任何一个有改变时,将会触发该操作. / ...

  8. vs2016 vsto excel addin deploy error: vsto 无法解析属性type的值

    https://social.msdn.microsoft.com/Forums/vstudio/en-US/ea33e391-21d7-4f54-92cb-c7af72f19c61/outlook- ...

  9. Java:标示符 基本数据类型

    标示符: 在程序中自定义的一些名称,例如:变量.类名.方法名…… 组成有数字0~9.大小写英文字母.“$”和下划线“_”组成,且不能由数字开头,以及不能使用java已使用和保留的关键字. Java中的 ...

  10. HADOOP 2架构图

    HDFS 2 architecture YARN architecture