#P005927. 美食之旅
美食之旅
题目描述
小 是一位热衷于品尝各类美食的城市旅行者,他计划在 个不同城市(城市编号为 )之间进行一次巡回旅行。这些城市由若干条单向飞行航线相连,任意两个城市之间都可以坐大巴到达。为了品尝更多城市的特色美食,罗杰希望尽可能多地访问不同城市。
小 的旅行从 号城市出发,最终要求返回到 号城市。由于航线是单向的,这给小 的行程安排带来了挑战,他可能无论如何也无法访问完所有的城市。
小 的目标是:尽可能访问更多的城市,他可以重复访问同一个城市。
为了实现这一目标,小 决定在旅行过程中,如果编号为 的城市有单向航班到编号为 的城市,但编号为 的城市没有单向航班到编号为 的城市。那么在这种情况下,他可以从编号为 的城市坐大巴回到编号为 的城市。但是,上述乘坐大巴的行为,他最多只会进行一次。
请编程计算出,小 最多能访问到多少个不同的城市?
输入格式
第一行读入两个整数 和 ,分别代表城市的数量和单向航班的数量。
接下来 行,每行包含两个整数 和 ,表示存在一条从城市 到城市 的单向航线,且不会有重复的航线出现。
输出格式
输出一个整数,表示利用一次乘坐大巴的机会,小 最多可以访问多少个不同的城市。
样例
输入
7 10
1 2
3 1
2 5
2 4
3 7
3 5
3 6
6 5
7 2
4 7
输出
6
数据范围
对于 的数据,满足 ,。
对于 的数据,满足 ,。