CF825E.Minimal Labels

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given a directed acyclic graph with nn vertices and mm edges. There are no self-loops or multiple edges between any pair of vertices. Graph can be disconnected.

You should assign labels to all vertices in such a way that:

  • Labels form a valid permutation of length nn — an integer sequence such that each integer from 11 to nn appears exactly once in it.
  • If there exists an edge from vertex vv to vertex uu then labelvlabel_{v} should be smaller than labelulabel_{u} .
  • Permutation should be lexicographically smallest among all suitable.

Find such sequence of labels to satisfy all the conditions.

输入格式

The first line contains two integer numbers nn , mm ( 2<=n<=105,1<=m<=1052<=n<=10^{5},1<=m<=10^{5} ).

Next mm lines contain two integer numbers vv and uu ( 1<=v,u<=n,vu1<=v,u<=n,v≠u ) — edges of the graph. Edges are directed, graph doesn't contain loops or multiple edges.

输出格式

Print nn numbers — lexicographically smallest correct permutation of labels of vertices.

输入输出样例

  • 输入#1

    3 3
    1 2
    1 3
    3 2
    

    输出#1

    1 3 2 
    
  • 输入#2

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

    输出#2

    4 1 2 3 
    
  • 输入#3

    5 4
    3 1
    2 1
    2 3
    4 5
    

    输出#3

    3 1 2 4 5 
    
首页