心如止水
Je n'ai pas le temps
posts - 400,comments - 130,trackbacks - 0
大概一个星期前小猪发给我一份网络流24题,直到昨天才开始做。

1、飞行员配对问题
二分图匹配问题,直接Hopcroft Karp即可。

2、太空飞行计划问题
题目大意是有M个实验,有N个仪器,每个实验需要一个或多个仪器,做实验有收益,购买仪器需要消耗,求收益最多的方案。
最大权闭合图问题。设源点汇点为S、T,从S向M个实验连一条容量为所得收益的有向边,N个仪器向T连一条容量为所需消耗的有向边,另外,从某个实验向所需要的仪器连一条无穷大的有向边。
求该图最小割为MinCut,设所以实验的收益为TOT,则答案为TOT-MinCut。

3、最小路径覆盖问题
对于一个有向无环图,将每个顶点X,拆成X1、X2,如果原图中有一条有向边<X,Y>,则在X1、Y2之间连一条边,答案即为原图中顶点数减去该二分图的最大匹配数。

4、魔术球问题
题目大意是给出N个柱子,在这些柱子上依次放入编号为1、2、3……的球,要求一个柱子上相邻两个数的和为完全平方数,求最多可以放置多少个球。
顺序枚举可以放入的球数,将每个数字看作一个顶点,如果i+j(i<j)为完全平方数,则从i向j连一条有向边,最终的图为有向无环图,求此图的最小路径覆盖。枚举直到ans的最小路径覆盖为N,ans+1的最小路径覆盖为N+1。

5、圆桌问题
题目大意是有N个代表团,第i个代表团有r[i]个人,有M个圆桌,第i个圆桌可容纳c[i]个人,同一个代表团的不能坐在一起,求一种安排方案。
二分图多重匹配问题。从S向N个代表团各连一条容量为r[i]的边,每个代表团向M个圆桌连一条容量为1的边,每个圆桌向T连一条容量为c[i]的边,如果网络流的最大流为代表团总人数,则存在这样的方案。

7、试题库问题
题目大意是有N道试题,共有K种类型,每道试题可能属于一个或多个类别,现要求选出M道试题,使第i种类型题数为need[i]。求一种方案。
二分图多重匹配问题。设S、S'、T,从S向S'连一条容量为M的边,从S'向每道试题连一条容量为1的边,对于试题i,如果属于类型j,则从试题i向类型j连一条容量为1边,每个类型向T连一条容量为need[j]的边。如果网络流的最大流为M,则存在这样的方案。
posted on 2011-08-15 22:19 lee1r 阅读(763) 评论(0)  编辑 收藏 引用 所属分类: 算法与数据结构

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理