算法题费用流

HIT 2713 Matrix3

一个人在一个NxN的矩阵上旅行,矩阵上的每个格子有值(第一个矩阵),每个格子有高度(第二个矩阵),这个人每次从格子上的任意一点出发,可以走到相邻的高度更低的格子上面,并获得该格子的值,同时把该格子的值变为0,每次走出边界算完成一次旅行,求k次旅行后这个人可能获得的值的和。

继续阅读

标准
算法题费用流

HIT 2543 Stone IV

一个人想把一些石头从A城(节点编号0)运到B城(节点编号1),但是一些路的容量不足够使全部石头通过,他可以花钱增加路的容量,同时通过几条不同的路把石头从A城运到B城

输入N(城市数目) M(路的数目) C(这个人拥有的钱) P(每个石头花的钱数)
接下来m行: 每行u, v, c1, c2 代表u, v之间有一条路,这个人可以花c2的钱使这条路的容量增加1
求这个人最多可以运到B城的石头数

继续阅读

标准
算法题费用流

POJ 2516

有n个商人,m个仓库,k种物品
接下来n行,每行k个数字,表示需要每种物品的数量
接下来m行,每行k个数字,表示每个仓库每种物品的数量
接下来k个矩阵,每个矩阵n行m列,表示从第mm个仓库往第nn个商人送1单位k种商品需要的费用
求是否存在满足商人需求情况下的最小费用,没有输出-1

继续阅读

标准