题目 在一个城市里有\(n\)个地点和\(k\)条道路,道路是无环的(也就是说一定可以二分染色--回路长度为偶数0),现在伞兵需要去n个地点视察,只能沿着路的方向走,问最少需要多少伞兵. 分析 这是什么问题?找出最少的边,访问所有的点--二分图的的最小路径覆盖. 那么对于一个最大匹配,它能覆盖(2*最大匹配)个点,剩下的点都需要单独一条边覆盖,从而设匹配数为\(k\),覆盖数为\(p\),有\[n-2*k+k=p\],也就是\(n-k=p\). 代码 #include <cstring> #i…