给出N*M矩阵,每个点建立灯塔有花费,每个点的灯塔有连接范围,求每一行都建立一个灯塔的最小花费,要求每相邻两行的灯塔可以互相连接,满足 |j-k|≤f(i,j)+f(i+1,k)
DP思路,dp[i][j]=在第i行的j位置放置灯塔的最小花费,dp[i][j]=Min(dp[i-1][k]+a[i][j]),同时更新当前点可以覆盖该行的所有位置的最小值
要求上个区间的最小值,用线段树优化,否则...
分类:
其他好文 时间:
2014-10-14 16:17:28
阅读次数:
267
题目:poj 2516 Minimum Cost
题意:有 n 个商店,k种物品和 m 个供货商,让你求进满足商店需求的货物的最小花费?
有必要说一下输入数据。
首先n ,k ,m
然后是一个n*m的矩阵,n个商店对每种货物的需求,表示第 i 个商店需要第 j 种货物 x个
然后是m * k 的矩阵,m个供货商可以供k种货物的数量,表示第 i 个供货商 提供第 j 中货物 x...
分类:
其他好文 时间:
2014-10-14 13:53:38
阅读次数:
130
题目链接:11578 - Situp Benches题意:健♂身♂房有两个仰卧起坐坐垫,每次调整角度要花费10元/10度,每次使用要花费15,如今给定n个人的时间顺序,和所希望的角度,求最少花费思路:dp,dp[i][j][k]表示第i个人,一个角度为j,还有一个为k的最小花费,一个人用和两个人用的...
分类:
其他好文 时间:
2014-10-10 15:36:00
阅读次数:
94
Going Home
题目:
给出一个N*M的图,图上的m表示人,H表示房子,每座房子只能有一个人,要求你所有人到房子中总步数最少。m个数与H个数一样多。
算法分析:
这个题目还是比较裸的。可以想到先求出每个人到每座房子的距离。然后求出最小花费,这个好像就是最小费用流吧?一开始用了KM写完后,发现。。。。哪里不对啊?后来才觉悟,原来题目是求解最小花费,KM是最大匹配...
分类:
其他好文 时间:
2014-10-10 09:46:54
阅读次数:
167
Dual Core CPU
题目:
给出由核A和核B组成的双核CPU上的运行N个模块。模块i在核A上执行的花费为Ai,在核B上执行的花费为Bi。有M个互相之间需要进行数据交换的模块组合(ai,bi),如果,这两块模块在同一个核上执行则没有额外的费用,否则会产生wi的花费。请计算执行所有模块所需的最小花费。
算法分析:
用最小的费用将对象划分成两个集合问题,常常可以转...
分类:
其他好文 时间:
2014-10-07 11:46:33
阅读次数:
227
题目大意:给出一张网格图,描述了每个点是否是加油站,然后给出以下规则。
1.油量限制,一次加油之后只能行驶k步,向下行驶和向右行驶的时候不增加花费,否则增加B的花费。
2.在没油的时候,若该点没有加油站,就建立一个加油站。花费C。
3.加油花费A。
思路:分层图。f[i][j][k]表示在(i,j)处油箱中还有k的油的时候的最小花费,然后分三种情况更新。
(delta = 往回走...
分类:
其他好文 时间:
2014-10-06 19:17:00
阅读次数:
200
http://acm.hdu.edu.cn/showproblem.php?pid=5009题意:一个数列,每个点代表一种颜色,每次选一个区间覆盖,覆盖的代价是区间内颜色种类数的平方,直到覆盖整个数列,求最小花费思路:首先合并颜色相同的点,接着离散化颜色,做dp,dp[i]表示取到位置i的最小花费,...
分类:
其他好文 时间:
2014-10-03 23:11:15
阅读次数:
277
题意:
给定n个点的树,m个黑点
下面n-1行给出边和删除这条边的费用
下面m个黑点的点标[0,n-1]
删除一些边使得任意2个黑点都不连通。
问删除的最小花费。
思路:
树形dp
每个点有2个状态,成为黑点或白点。
若本身这个点就是黑点那么只有黑点一种状态。
否则可以认为是子树中某个黑点转移上来。
所以dp[i][0]是i点为黑点的状态。
#pragma comm...
分类:
其他好文 时间:
2014-10-02 20:59:23
阅读次数:
320
题目大意:有一些牛,他们的牛舍需要被打扫。有N(N
思路:1w的数据量不算很大,再加上时限5s,就n^2动归来做。
将牛按时间段的开始排序。
设f[i]为若取第i头牛打扫,到这头牛结束的时间最小花费是多少。
则 f[i] = min(f[i],f[j] + cost[i]) (f[i].st
最后是初值和答案的问题。由于题目中说每时每刻都有牛在打扫,所以f的初值为极大...
分类:
其他好文 时间:
2014-10-01 19:00:31
阅读次数:
166
题目:hdoj 3001 Travelling
题意:标准的旅行商加一句话,每个点最多走两次。
分析:状态转移方程一模一样,只是要三进制,因为每个点有三种状态 0 ,1 2
定义状态:dp【st】【i】 :在状态为 st 时 当前在 i 点的最小花费
转移方程:dp【now】【j】 = min(dp【now】【j】,dp【st】【i】+mp【i】【j】);now是st可以一...
分类:
其他好文 时间:
2014-09-26 13:24:39
阅读次数:
179