#include <iostream> #include <cmath> #include <climits> using namespace std; int pos[301]; int v[31][301]; int cost[301][301]; //状态转移方程为: // 前i个邮局控制前j个村庄的最小距离和: // v[i][j] = min{v[i-1][k]+cost[k+1][j]}(i-1 <= k <= j-1); int main() { int V, P; scanf("%d%d", &V, &P); for(int i = 1; i <= V; ++i) scanf("%d", &pos[i]); //从村落i到村落j由一个邮局控制时的最短距离和 for(int i = 1; i <= V; ++i) for(int j = i; j <= V; ++j) { int mid = (i+j) >> 1; for(int k = i; k <= j; ++k) cost[i][j] += abs(pos[mid] - pos[k]); } //initial for(int i = 1; i <= V; ++i) v[1][i] = cost[1][i]; //dp for(int i = 2; i <= P; ++i) for(int j = i; j <= V; ++j) { int min = INT_MAX; for(int k = i-1; k <= j-1; ++k) if(v[i-1][k] + cost[k+1][j] < min) min = v[i-1][k] + cost[k+1][j]; v[i][j] = min; } printf("%d/n", v[P][V]); return 0; }

pku 1160 Post Office相关推荐

  1. POJ 1160 Post Office(经典DP)

    题目链接:点击打开链接 题意:一条高速公路,有N个村庄,每个村庄均有一个唯一的坐标,选择P个村庄建邮局,问怎么选择,才能使每个村庄到其最近邮局的距离和最小?最后打印这个最小值. 思路:典型的DP问题. ...

  2. poj 1160(Post Office)

    http://poj.org/problem?id=1160 先讲讲我的思路:这道题首先很容易想到是用动态规划思想,所以我定义了一个二维数组dp[i][j],表示前j个位置,修建了i个邮局.所以推导出 ...

  3. POJ 1160 Post Office

    WA 1. 写出了 dist[][] 数组和 minDist() 函数, 实现了 minDist 函数但最终却是使用了 dist 数组 不一致 代码 #include <iostream> ...

  4. poj 1160 Post Office(DP简单题)

    给n个村子建p个邮局,求最佳的建设方案使得每个村子到最近的邮局的距离和最短,输出最短距离. 首先递推求出n个村子建1个邮局的最佳方案,画下图很容易理解. 再递推求解多个邮局的最佳方案,具体的看注释吧. ...

  5. [转]四边形不等式优化dp(POJ1160)

    四边形不等式优化动态规划原理: 1.当决策代价函数w[i][j]满足w[i][j]+w[i'][j']<=w[I;][j]+w[i][j'](i<=i'<=j<=j')时,称w ...

  6. pku,zju题目分类

    哎呦喂,直接ctrl+A了.话说浙江大学的题还见过的呢.. 公告: [意见反馈][官方博客]   ural pku Zju 题目分类 收藏   感谢 mugu 的提供.... Ural Problem ...

  7. ACM 网址和一些建议

    USACO http://ace.delos.com/usacogate 美国著名在线题库,专门为信息学竞赛选手准备 TJU http://acm.tongji.edu.cn/ 同济大学在线题库,唯一 ...

  8. ACM大量习题题库及建议培养计划

    ACM大量习题题库 ACM大量习题题库  现在网上有许多题库,大多是可以在线评测,所以叫做Online Judge.除了USACO是为IOI准备外,其余几乎全部是大学的ACM竞赛题库. USACO h ...

  9. ACM题目和培养训练!!!

    ACM大量习题题库 ACM大量习题题库 现在网上有许多题库,大多是可以在线评测,所以叫做Online Judge.除了USACO是为IOI准备外,其余几乎全部是大学的ACM竞赛题库. USACO ht ...

最新文章

  1. 为什么 Java 线程没有 Running 状态?一下被问懵!
  2. python-模块的操作-安装-导入-使用
  3. 原型设计应当掌握的四个设计思维:初始、常态、边界、错误
  4. 【集】华硕,技嘉主板注入USB3.0驱动
  5. PS中有哪些快速抠图的方法
  6. ELK-部署Logstash
  7. android 菜鸟面单打印_关于菜鸟的圆通电子面单打印
  8. HTML Canvas 刮刮卡抽奖效果的实现
  9. 学云计算比较好的几个论坛
  10. 装多系统的U盘启动盘的制作
  11. OBS Studio安装教程以及录制等详细配置
  12. 【Spark】--SparkCore6
  13. C++软件开发经典面试题目
  14. Android ORM框架GreenDao用法
  15. java爬虫拉勾网_[Java教程]node.js爬虫爬取拉勾网职位信息
  16. repo 工具使用手册
  17. setting中的各种设置
  18. python 仪表驱动_技术文章 | 锐视模块化仪器python驱动使用说明
  19. wandb快速入门使用教程
  20. 春晚架构&Ylmf OSChrom OS

热门文章

  1. 2021中青杯数学建模A题思路详细分析 代码?
  2. 手机人人java_人人网JAVA版手机客户端软件功能详解
  3. asList和ArrayList不得不说的故事
  4. iOS开发-写给初学者:OC面向对象的三大特征
  5. python中imread什么意思_Python 中各种imread函数的区别与联系
  6. 子虔科技Realink.CAD数据轻量化处理服务上线以及最新动态
  7. Makefile -Linux编译必备知识
  8. 学生抢课接口(高并发入门)
  9. [分享]男人穿衣不可不知的21条规律
  10. CortexA7工业级迅为-iMX6UL开发板硬件和资料介绍