题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1150
题目大意:机器调度问题,有两台机器,分别有n和m种工作状态,现有k个任务,需要用这两种机器来完成,由于每更换一次机器的工作状态都需要重启,因此,想要怎样安排这些任务,使得机器的重启次数最少
思路:由于每个任务都可以用A或B机器的某种工作状态来完成,因此,对于每个任务,可以把A,B的工作状态作为顶点,在对应的A和B的工作状态间连线,则对于每条边的两个顶点,因为每个任务都要完成,故至少要有一个顶点(某个机器的一种状态)存在,这样这个问题就转化成了在这些顶点中选取尽量少的顶点(尽量少的工作状态,尽量少的重启次数),使得每一条边都至少和其中一个点相关联,即最小点覆盖问题。由于二分图的最小点覆盖数=最大匹配数,故可用匈牙利算法解决。