求有向图的最小路径覆盖但是这道题顶点可以重复
例如1->2,2->3,3->4,4->2,2->5这一个有向图,这个图只要1个机器人就可以走完所有路,但如果不建立传递闭包
直接根据边进行匹配,那样得出来的结果是不正确的(1->2->3->4 ; 5),因为平时所指的路径覆盖,顶点最多只经过一次,而这道题是可以经过多次的
因此必须用floyd重新确定连通性,建立一个传递闭包,根据这个闭包建立新的图,(1->2->3->4->5)使得满足每个顶点只经过一次
再求一下最大匹配即可
代码: