众所周知,一个合格的C++程序员,new之后必须记得delete。
作为一个不合格的C++程序员,Minori选择去写Java。
但是Minori还是想知道,如果现在就执行垃圾回收,究竟能清理掉多少对象,又能剩下多少?
为了简化问题讨论,每个new的对象用数字1~N表示(特别地,数字0表示根对象)。本问题实际是在问,给定一张有向图,从节点0出发,有多少个点无法到达?
第一行一个数字t,表示测试数据组数(1<=t<=10),接下来t组测试数据,每组都遵循下述格式:
第2~M+1行,每行两个整数ui vi,表示由对象ui可以访问到对象vi。
(题目中所有输入均为非负整数,且最大不超过123456)
3
10 4
0 2
2 3
3 5
2 4
5 5
0 1
1 2
2 3
3 4
4 5
200 7
0 2
0 3
3 4
2 4
100 101
101 102
102 100
6
0
197