定义:有一个有向图,包含 N 个顶点和 M 条边,顶点编号为1到N,边编号为 1 到 M。
操作:可以任意次数执行以下操作:
选择一个顶点 A(1≤A≤N)和另一个顶点 B(1≤B≤N,A=B),移除从 A 到 B 的一条边,同时移除从B到另一个顶点 C(1≤C≤N,B=C) 的一条边。
如果 A=C,则添加一条从 A 到 C 的边。
问题:经过一系列操作后,剩余的边的数量最少是多少?
输入格式:
第一行包含一个整数 T,表示测试用例的数量。
接下来 T 行,每行描述一个测试用例。
每个测试用例的第一行包含两个整数 N 和 M,表示顶点和边的数量。
接下来 M 行,描述 M 条边,每行包含两个整数 A 和 B,表示从顶点 A 到顶点 B 存在一条边。
输出格式:
对于每个测试样例,输出一个整数,表示剩余边的最少数量。