考试成绩
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

N个考生(1<=N<=500),考号依次为123,。。。。,N进行考试,考试结束后,学校要将所有考生从前往后依次排名,但现在学校不能直接获得每个考生的考试成绩,只知道两人成绩之间的关系,即用P1P2表示,排名时P1P2之前。现在请你编程序确定排名。

输入描述:

输入有若干组,每组中的第一行为二个数N(1<=N<=500),M;其中N表示考生的个数,M表示接着有M行的输入数据。接下来的M行数据中,每行也有两个整数P1,P2表示即考生P1的成绩高于P。

输出描述:

给出一个符合要求的排名。输出时考号之间有空格,最后一名后面没有空格。

其他说明:符合条件的排名可能不是唯一的,此时要求输出时编号小的考生在前;输入数据保证是正确的,即输入数据确保一定能有一个符合要求的排名。

示例1

输入

复制
3 2
3 1
3 2
17 16
16 1
13 2
7 3
12 4
12 5
17 6
10 7
11 8
11 9
16 10
13 11
15 12
15 13
17 14
17 15
17 16
0 0

输出

复制
3 1 2
17 6 14 15 12 4 5 13 2 11 8 9 16 1 10 7 3