HDU 团队中有 N 名 ACM 成员。2007 年 ZJPCPC 阳光杯即将到来,LCY 希望选出一些优秀的 ACM 成员参加比赛。过去几天已经有 M 场比赛(没有两个 ACM 成员会在两场比赛中相遇,即两个 ACM 成员之间最多只有一场比赛)。
LCY 会问:“A 和 B 中谁赢?”但有时你无法回答 LCY 的问题。例如,有三个人 A、B、C。A 和 B 之间进行了一场比赛,A 是赢家。如果 LCY 问“A 和 B 中谁是赢家”,当然你可以回答“A”。但如果 LCY 问“A 和 C 中谁是赢家”,你不能告诉他答案。
作为 LCY 的助理,你想知道最多能告诉 LCY 的查询数量(问 A、B 和问 B、A 是一HDU 团队中有 N 名 ACM 成员。2007 年 ZJPCPC 阳光杯即将到来,LCY 希望选出一些优秀的 ACM 成员参加比赛。过去几天已经有 M 场比赛(没有两个 ACM 成员会在两场比赛中相遇,即两个 ACM 成员之间最多只有一场比赛)。
输入包含多组测试数据。
第一行包含一个整数 T,表示测试用例的数量。
每个测试用例的第一行包含两个整数 N 和 M(N, M \le 500),N 表示 HDU 团队中 ACM 成员的数量,M 表示已经举行的比赛场次。
接下来的 M 行,每行表示一场比赛,包含两个整数 A 和 B,表示 A 在 A 和 B 之间的比赛中获胜。
我们定义:如果 A 战胜 B,B 战胜 C,那么 A 战胜 C。
对于每个测试用例,输出一个整数,代表你无法告诉 LCY 的最大查询数量。
3 3 3 1 2 1 3 2 3 3 2 1 2 2 3 4 2 1 2 3 4
0 0 4