shunfurh 于 2017.01.05 22:22 提问

Fast Food

Description

The fastfood chain McBurger owns several restaurants along a highway. Recently, they have decided to build several depots along the highway, each one located at a restaurant and supplying several of the restaurants with the needed ingredients. Naturally, these depots should be placed so that the average distance between a restaurant and its assigned depot is minimized. You are to write a program that computes the optimal positions and assignments of the depots.

To make this more precise, the management of McBurger has issued the following specification: You will be given the positions of n restaurants along the highway as n integers d1 < d2 < ... < dn (these are the distances measured from the company's headquarter, which happens to be at the same highway). Furthermore, a number k (k <= n) will be given, the number of depots to be built.

The k depots will be built at the locations of k different restaurants. Each restaurant will be assigned to the closest depot, from which it will then receive its supplies. To minimize shipping costs, the total distance sum, defined as

n
∑ |di - (position of depot serving restaurant i)|
i=1

must be as small as possible.

Write a program that computes the positions of the k depots, such that the total distance sum is minimized.
Input

The input file contains several descriptions of fastfood chains. Each description starts with a line containing the two integers n and k. n and k will satisfy 1 <= n <= 200, 1 <= k <= 30, k <= n. Following this will n lines containing one integer each, giving the positions di of the restaurants, ordered increasingly.

The input file will end with a case starting with n = k = 0. This case should not be processed.
Output

For each chain, first output the number of the chain. Then output an optimal placement of the depots as follows: for each depot output a line containing its position and the range of restaurants it serves. If there is more than one optimal solution, output any of them. After the depot descriptions output a line containing the total distance sum, as defined in the problem text.

Output a blank line after each test case.
Sample Input

6 3
5
6
12
19
20
27
0 0
Sample Output

Chain 1
Depot 1 at restaurant 2 serves restaurants 1 to 3
Depot 2 at restaurant 4 serves restaurants 4 to 5
Depot 3 at restaurant 6 serves restaurant 6
Total distance sum = 8

1个回答

caozhy      2017.01.12 00:47

hoj 1005 fast food

[ACM] HDU 1227 Fast Food （经典Dp）
Fast Food Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2173    Accepted Submission(s): 930 Problem Description The fastfood chain
Problem 1005 Fast Food
Problem 1005 Fast Food Accept: 714    Submit: 1980 Time Limit: 1000 mSec    Memory Limit : 32768 KB Problem Description The fastfood chain McBurger owns several restaurants along a highw
zoj 1196 Fast Food 变种区间dp

FZU1005 Fast Food动态规划
FZU1005 Fast FoodTime Limit: 1000 mSec Memory Limit : 32768 KB 题目链接解题思路 第一反应是二分答案+贪心23333 后来还是考虑了动态规划 f[k][l][r]其中 k 代表仓库数量 l 和 r 分别代表左右区间，所以首先想到的是动规方程 f[k][l][r]=f[j][l][i]+f[k-j][i+1][r]

1.简明题意 检测汽车拐弯的时候是否会碰到街道 2.解题思路、 汽车拐弯问题，给定X, Y, l, d判断是否能够拐弯。首先当X或者Y小于d，那么一定不能。 其次我们发现随着角度θ的增大，最大高度ｈ先增长后减小，即为凸性函数，可以用三分法来求解。 这里的Calc函数需要比较繁琐的推倒公式： s = l * cos(θ) + w * sin(θ) - x; h = s * tan(
poj 1784 Huffman's Greed 动态规划四边形加速求最优二叉搜索树

Fast Food
Fast FoodTime Limit:1sMemory limit:32MAccepted Submit:327Total Submit:910The fastfood chain McBurger owns several restaurants along a highway. Recently, they have
51nod 1485字母排序

UVA - 662 Fast Food