SZTG-L-CF825E. Minimal Labels

提交1 通过1
通过率100%
时间限制1000ms
内存限制256MiB

题目描述

题目描述

给定一个有 nn 个顶点 mm 条边的有向无环图。图中不存在自环或任意一对顶点之间的重边。该图可以是不连通的。

你需要给所有顶点分配编号,要求:

  • 编号构成一个长度为 nn 的有效排列,即每个整数 11 到 nn 恰好出现一次。
  • 如果存在一条从顶点 vv 到顶点 uu 的有向边,定义 labelilabel_i 表示节点 ii 的编号,则 labelvlabel_{v} 必须小于 labelulabel_{u}。
  • 需要使编号排列在所有满足条件的排列中字典序最小。

请找出满足所有条件的编号序列。

输入格式

第一行包含两个整数 nn、mm。

接下来的 mm 行,每行包含两个整数 vv 和 uu,表示一条从 vv 到 uu 的有向边。边是有向的,图中没有自环或重边。

输出格式

输出 nn 个数字,表示顶点的编号,使排列在所有满足条件的排列中字典序最小。

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

说明 / 提示

由 ChatGPT 5 翻译。

数据范围

(2≤n≤105,1≤m≤1052\leq n\leq 10^{5},1\leq m\leq 10^{5})

(1≤v,u≤n,v≠u1\leq v,u\leq n, v\neq u)