#Lutece0734. 超神玩数分

超神玩数分

Migrated from Lutece 734 超神玩数分

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

作为数院第一,超神最擅长是证明题。有一天,超神又开始玩数学分析了。已知超神手头上有nn个命题,他想证明这nn个命题是等价命题,即任意一个命题都可以直接或间接的推出其他所有命题。超神花了一分钟就推出了其中mm个不同的关系,对于每一个关系uvu\rightarrow v,超神已经证明了命题uu可以推出命题vv(命题vv不一定可以推出命题uu)。此时超神突然想起了昨晚遗留下来的世界性难题还没有证完,于是他打算赶紧解决掉手上的这道水题,问你超神至少需要再证明多少个关系,就可以推出这nn个命题是等价的。

Input

多组数据,每组数据首先输入nnmm,(1n200001\le n\le 20000),(0m500000\le m\le 50000)分别代表超神手头上的命题数,以及已经证明的关系的个数。接下来mm行每行两个数字uuvv,(1u,vn1\le u,v\le n并且uvu\ne v)代表超神已经证明出来的关系:命题uu可推出命题vv

Output

每组数据输出一个值,代表至少还需要再证明多少个关系。

Samples

4 0
3 2
1 2
1 3
4
2

Resources

2013 UESTC ACM Training for Graph Theory