hdu1227 Fast Food
题目链接:http://acm.hdu.edu.cn/showproblem.php?
pid=1227
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <string.h>
#include <string> using namespace std; const int MAXN = 200 + 1; //the number of restaurants
const int MAXM = 30 + 1; //the number of depots
int dp[MAXN][MAXM], value[MAXN][MAXN], pos[MAXN];
int n, k; //输入值 /*
dp[i][j]表示在i个饭店之间建设j个仓库的最短距离。
value[i][j]表示在第i个饭店与第j个饭店之间建设一个仓库,
并由这个仓库供给i到j之间的饭店(包含i。j)的最短距离。
非常明显这个仓库须要建设在i与j的中位数旁边即mid = (i + j) / 2;
当i到j之间有奇数个饭店时mid = i到j最中间的点,
当i到j之间有偶数个饭店时mid = i到j之间最中间的两点的左边的
一点(右边的一个点也能够,事实上仅仅要是这两个点之间的点都能够)
pos[]数组存每一个输入饭店的位置。 */ void input()
{
int cases = 0; while (scanf("%d %d", &n, &k) != EOF) //输入
{
if (!n && !k) break; int mid = 0; for (int i = 1; i <= n; i++)
{
scanf("%d", &pos[i]);
} for (int i = 1; i <= n; i++) //计算value[][]数组
{
for (int j = i; j <= n; j++)
{
mid = (i + j) / 2;
value[i][j] = 0;
for (int x = i; x <= j; x++)
{
value[i][j] += abs(pos[x] - pos[mid]);
}
}
} for (int i = 1; i <= n; i++) dp[i][1] = value[1][i];
for (int i = 1; i <= n; i++) //计算dp[][];
{
for (int j = 2; j <= i && j <= k; j++)
{
dp[i][j] = dp[i - 1][j - 1]; //赋初值,直接在第i个饭店处放置一个仓库
for (int x = j - 1; x < i; x++) //k的范围
{
if (dp[x][j - 1] + value[x + 1][i] < dp[i][j])
{
dp[i][j] = dp[x][j - 1] + value[x + 1][i];
}
}
}
} printf("Chain %d\n", ++cases); //输出
printf("Total distance sum = %d\n\n", dp[n][k]);
}
} int main()
{
input();
return 0;
}
hdu1227 Fast Food的更多相关文章
- HDU1227:Fast Food
题目链接:Fast Food 题意:一条直线上有n个饭店,问建造k个原料厂(仍旧在商店位置)得到的最小距离 分析:见代码 //一条直线上有n个饭店,问建造k个原料厂(仍旧在商店位置)得到的最小距离 / ...
- opencv中的SIFT,SURF,ORB,FAST 特征描叙算子比较
opencv中的SIFT,SURF,ORB,FAST 特征描叙算子比较 参考: http://wenku.baidu.com/link?url=1aDYAJBCrrK-uk2w3sSNai7h52x_ ...
- 基于Fast Bilateral Filtering 算法的 High-Dynamic Range(HDR) 图像显示技术。
一.引言 本人初次接触HDR方面的知识,有描述不正确的地方烦请见谅. 为方便文章描述,引用部分百度中的文章对HDR图像进行简单的描述. 高动态范围图像(High-Dynamic Range,简称HDR ...
- Fast RCNN 训练自己的数据集(3训练和检测)
转载请注明出处,楼燚(yì)航的blog,http://www.cnblogs.com/louyihang-loves-baiyan/ https://github.com/YihangLou/fas ...
- Fast RCNN 训练自己数据集 (2修改数据读取接口)
Fast RCNN训练自己的数据集 (2修改读写接口) 转载请注明出处,楼燚(yì)航的blog,http://www.cnblogs.com/louyihang-loves-baiyan/ http ...
- 网格弹簧质点系统模拟(Spring-Mass System by Fast Method)附源码
弹簧质点模型的求解方法包括显式欧拉积分和隐式欧拉积分等方法,其中显式欧拉积分求解快速,但积分步长小,两个可视帧之间需要多次积分,而隐式欧拉积分则需要求解线性方程组,但其稳定性好,能够取较大的积分步长. ...
- XiangBai——【AAAI2017】TextBoxes_A Fast Text Detector with a Single Deep Neural Network
XiangBai--[AAAI2017]TextBoxes:A Fast Text Detector with a Single Deep Neural Network 目录 作者和相关链接 方法概括 ...
- 论文笔记--Fast RCNN
很久之前试着写一篇深度学习的基础知识,无奈下笔之后发现这个话题确实太大,今天发一篇最近看的论文Fast RCNN.这篇文章是微软研究院的Ross Girshick大神的一篇作品,主要是对RCNN的一些 ...
- [转]Amazon DynamoDB – a Fast and Scalable NoSQL Database Service Designed for Internet Scale Applications
This article is from blog of Amazon CTO Werner Vogels. -------------------- Today is a very exciting ...
随机推荐
- Insertion Sort List——链表的插入排序
Sort a linked list using insertion sort. 这道题跟 Sort List 类似,要求在链表上实现一种排序算法,这道题是指定实现插入排序.插入排序是一种O(n^2) ...
- 半透明AlphaBlend
AlphaBlend 函数功能:该函数用来显示透明或半透明像素的位图. 函数原型: BOOL AlphaBlend( HDC hdcDest, // handle to destination DC ...
- ELK日志处理
ELK的工作原理: 使用多播进行机器发现同一个集群内的节点,并汇总各个节点的返回组成一个集群,主节点要读取各个节点的状态,在关键时候进行数据的恢复,主节点会坚持各个节点的状态,并决定每个分片的位置,通 ...
- 微软企业库5.0 学习之路——第二步、使用VS2010+Data Access模块建立多数据库项目
现在我就开始进入学习之路的第二步——Data Access模块,这个模块是企业库中被使用频率最高的模块,它很好的封装了数据库操作应用,为我们进行多数据库系统开发提供了便利,只需更改配置文件就 可以很快 ...
- python 编码处理
# -*- coding: utf-8 -*-import easygui as gimport sysreload(sys)sys.setdefaultencoding('utf-8')
- Mvc全局过滤器与Action排除
http://blog.csdn.net/shuaihj/article/details/53020428 如何一次性给所有action做登录验证过滤,如何排除不需要做登录验证的action? 1. ...
- HDU 1561 The more, The Better【树形DP/有依赖的分组背包】
ACboy很喜欢玩一种战略游戏,在一个地图上,有N座城堡,每座城堡都有一定的宝物,在每次游戏中ACboy允许攻克M个城堡并获得里面的宝物.但由于地理位置原因,有些城堡不能直接攻克,要攻克这些城堡必须先 ...
- 洛谷P1940买蛋糕
题目传送门 题意:给定你一个数n,要求用最小个数的整数组成小于等于n的所有整数,并求出方案数. 很明显,擅长二进制的大犇们肯定一眼就看得出方案数是log2(n)+1,然而我并不擅长,但是推了一小会儿也 ...
- Codeforces Round #119 (Div. 2) Cut Ribbon(DP)
Cut Ribbon time limit per test 1 second memory limit per test 256 megabytes input standard input out ...
- 【UVA 11077】 Find the Permutations (置换+第一类斯特林数)
Find the Permutations Sorting is one of the most used operations in real life, where Computer Scienc ...