早上实现了第一个想法,使用DFS遍历搜索的算法。在TEST6的时候就挂掉了。
第二个想法是采用最大流算法。在n和m之间多加了两个节点,作为起点和汇点。如下图所示:
然后使用最大流算法就可以了。
结果如下:
看了参考答案以后,发现有一种最大流算法的简化方法,匈牙利算法。参考资料:
http://www.byvoid.com/blog/hungary/zh-hans/
http://baike.baidu.com/view/501092.htm
有空实现一下。
早上实现了第一个想法,使用DFS遍历搜索的算法。在TEST6的时候就挂掉了。
第二个想法是采用最大流算法。在n和m之间多加了两个节点,作为起点和汇点。如下图所示:
然后使用最大流算法就可以了。
结果如下:
看了参考答案以后,发现有一种最大流算法的简化方法,匈牙利算法。参考资料:
http://www.byvoid.com/blog/hungary/zh-hans/
http://baike.baidu.com/view/501092.htm
有空实现一下。