摘要: 由于珠宝的临界点必须放置守卫,一个守卫又有可能同时保护许多个珠宝,发现最后要求的便是二分图的最小点集覆盖,这个二分图是这样建的:对于每一个珠宝,如果其临界点没有守卫,那么就在珠宝和该临界点之间连一条边,这条边是必须被覆盖的,所以当整个二分图所有的边都连好后,所要做的就是求最小点集覆盖。 我看到网上很多人的做法有奇偶染色的,我这里写简单了一点,直接建成无向图,那么最终计算得到的为最小点集覆盖的2倍。View Code 1 #include <stdio.h> 2 #include <string.h> 3 #include <iostream> 4 #incl 阅读全文
posted @ 2013-01-19 22:20 芒果布丁 阅读(210) 评论(0) 推荐(0) 编辑