#1097. 旅行计划

旅行计划

题目描述

有 NN 座城市和 MM 条道路。输入的 x→yx\to y 表示城市 xx 在城市 yy 西侧,游客只能沿道路一直向东走。对每个城市 ii,求以它为终点时最多能游览的城市数量;可以自行选择起点,起点也计入数量。

输入格式

第一行两个整数 N,MN,M。接下来 MM 行,每行两个整数 x,yx,y,表示一条从 xx 向东通往 yy 的道路。

输出格式

输出 NN 行,第 ii 行是以城市 ii 为终点的最多游览城市数。

6 6
1 3
1 4
2 4
3 5
4 5
5 6
1
1
2
2
3
4

数据范围

1≤N≤1051\le N\le 10^5,1≤M≤2×1051\le M\le 2\times 10^5。道路指向东侧,因此不会形成有向环。

提示

按拓扑顺序处理城市。以当前点为终点的最优方案,可以沿一条出边延长到后继城市。