Submission
简单来说,维护图的邻接矩阵(本质上是把到同一个点的边合并了)。朱刘算法的每一轮会进行缩环,我们需要将环上所有点的入边和出边合并,在邻接矩阵上合并两点的复杂度是 O(n)O(n)O(n),而合并总共只会发生 <n<n<n 次。此外每一轮需要找每个点的最小入边,注意只有上一轮缩环得到的点的最小入边会发生变化,所以只需缩环时找到新点的最小入边,这也是 O(n)O(n)O(n) 的,而缩环也只会发生 <n<n<n 次。
总复杂度应当是 O(n2)O(n^2)O(n2) 的。
鉴于从未在网上看到过这种写法,所以不知道上面这种做法有没有问题。