Proving Equivalences

题意翻译

题目描述 在数学中,我们常常需要完成若干命题的等价性证明。 例如:有4个命题a,b,c,d,要证明他们是等价的,我们需要证明a<=>b,然后b<=>c,最后c<=>d。注意每次证明是双向的,因此一共完成了6次推导。另一种证明方法是:证明a->b,然后b->c,接着c->d,最后d->a,只须4次证明。 - 给出 $n$ 个点 $m$ 条边的有向图,问最少再加上多少条边才能使这个图是强连通的。 $T$ 组数据。 - $1\le n\le 2\times 10^4$, $1\le m\le 5\times 10^4$, $1\le T\le 100$。 输入数据 有T(T<=100)组数据,每组数据第一行为两个整数n和m(1<=n<=20000, 1<=m<=50000),即命题数和已完成的推导个数(编号为1..n)。以下m行每行包含两个整数s1和s2(1<=s1,s2<=n,s1!=s2),表明已经证明了s1->s2。 输出数据 输出还需要做推导数的最小值。 感谢@hicc0305 提供的翻译

题目描述

[problemUrl]: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=243&page=show_problem&problem=3319 [PDF](https://uva.onlinejudge.org/external/121/p12167.pdf) ![](https://cdn.luogu.com.cn/upload/vjudge_pic/UVA12167/20672a7ef95f421c6bc27426045de79f6977328a.png)

输入输出格式

输入格式


![](https://cdn.luogu.com.cn/upload/vjudge_pic/UVA12167/72c4aef9a6a93c35745e930251c44c5d04bdb054.png)

输出格式


![](https://cdn.luogu.com.cn/upload/vjudge_pic/UVA12167/f514c856b6f9668abdf482c0763040316485fc6a.png)

输入输出样例

输入样例 #1

2
4 0
3 2
1 2
1 3

输出样例 #1

4
2