#codethanksfestival14qualaf. [code_thanks_festival_14_quala_f]順位表
[code_thanks_festival_14_quala_f]順位表
问题描述
高桥参加了一个编程竞赛,有N个参与者参加了这个竞赛。每个参与者被分配了从1到N的编号,高桥是参与者1。
由于无法查看排名表,高桥不知道自己的排名。在竞赛后的社交聚会上,高桥获得了M个信息,每个信息表示"参与者A_i的排名比参与者B_i高"。高桥根据这些信息计算出自己可能的最高排名。
注意,最高排名为第1名,最低排名为第N名。并且不存在有2个或更多参与者同时获得同一名次的情况。
输入
输入以以下格式从标准输入中给出。
N M A_1 B_1 A_2 B_2 : A_M B_M
- 第1行包含两个整数,N表示竞赛参与者的数量(2 ≤ N ≤ 50),M表示高桥获得的信息数量(1 ≤ M ≤ 50)。
- 接下来的M行提供了高桥所获取的信息。其中第i行包含两个整数,A_i和B_i(1 ≤ A_i ≤ N,1 ≤ B_i ≤ N,A_i ≠ B_i),表示参与者A_i的排名比参与者B_i高。
保证不会提供矛盾的信息,并且不会重复提供相同的信息。
输出
输出高桥(参与者1)可能的最高排名,以一行形式输出一个整数。
输入示例1
5 3
2 1
3 2
1 5
输出示例1
3
这三条信息分别是:
- 参与者2的排名比参与者1高。
- 参与者3的排名比参与者2高。
- 参与者1的排名比参与者5高。
可能的排名表如下所示:
- 第1名:参与者3
- 第2名:参与者2
- 第3名:参与者1
- 第4名:参与者4
- 第5名:参与者5
在这种情况下,高桥作为参与者1,排名是第3名。由于不存在高于第2名的情况,所以输出3。
输入示例2
3 2
2 1
2 3
输出示例2
2
输入示例3
8 10
3 8
2 1
4 6
3 6
4 1
5 8
2 4
7 6
7 2
3 1
输出示例3
5