#CSES1757. 课程安排 II

课程安排 II

题目背景

翻译自 CSES-1757 题。

题目描述

你想完成 nn 门课程,这些课程有要求,形式为“课程 aa 必须在课程 bb 之前完成”。

你希望尽早完成课程 11。如果有多种方法可以完成课程 11,那么接下来就尽早完成课程 22,以此类推。

你的任务是确定完成课程的顺序。

输入格式

第一行包含两个整数 nn 和 mm,分别表示课程的数量和课程之间的要求关系数。课程编号为 1, 2, ..., n。

接下来的 mm 行描述课程之间的要求关系。每行有两个整数 aa 和 bb,表示课程 aa 必须在课程 bb 之前完成。

你可以假设至少有一种有效的课程安排。

输出格式

输出一行,包含 nn 个整数,表示完成课程的顺序。

样例

4 2
2 1
2 3
2 1 3 4

说明/提示

1≤n≤1051 \leq n \leq 10^5;

1≤m≤2×1051 \leq m \leq 2 \times 10^5;

1≤a,b≤n1 \leq a, b \leq n。