Logo
(追記) (追記ここまで)

28842번 - Деревня викингов 다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB144480.000%

문제

Иккинг заметил, что в его деревне очень запутанная схема подчинения. Всего в деревне живет $n$ викингов, пронумеруем их от 1ドル$ до $n$. Иккинг выписал $m$ пар чисел $a_i,ドル $b_i,ドル обозначающих, что $a_i$-й викинг может отдать поручение $b_i$-му викингу. При этом, викинг, получивший поручение, может передать его любому викингу, которому может отдать свое поручение. Скажем, что викинг номер $y$ находится в подчинении викинга номер $x,ドル если поручение викинга $x$ может дойти до викинга $y$.

Иккинг находит эту схему очень сложной, и неэффективной. Поэтому, он решил ввести новую схему подчинения. В ней будет ровно один лидер, которому никто не сможет отдавать поручения. А каждый викинг, кроме лидера, будет получать поручения от ровно одного другого викинга. Причем, поручения лидера смогут дойти до любого викинга деревни. Иными словами, новая схема подчинения будет представлять собой подвешенное дерево, с ребрами ориентированными от корня. Также, Иккинг хочет, чтобы множества викингов, находящихся в подчинении викинга $x$ в новой и старой схемах совпадали для всех $x$.

К сожалению, пока Иккинг не смог найти подходящую схему. Помогите ему, сообщите, существует ли такая схема, и если существует --- найдите любую.

입력

В первой строке дано два целых числа $n$ и $m$ --- количество викингов в деревне и количество пар викингов, первый из которых может отдать поручение второму, в старой схеме (1ドル \leq n, m \leq 500,000円$).

В следующих $m$ строках расположены пары целых чисел $a_i, b_i,ドル обозначающие, что в старой схеме $a_i$-й викинг может отдать поручение $b_i$-му викингу (1ドル \leq a_i, b_i \leq n$; $a_i \neq b_i$). Одна и та же пара чисел может встречаться несколько раз.

출력

Если искомая схема не существует, выведите <<No>>.

Иначе, в первой строке выведите <<Yes>>, а в следующей строке выведите $n$ целых чисел $p_1, p_2, \ldots, p_n$. Если $i$-й викинг будет являться лидером в новой схеме, то $p_i = -1,ドル иначе $p_i$ должно равняться номеру викинга, который сможет отдавать поручения $i$-му викингу в новой схеме (1ドル \leq p_i \leq n,ドル $i \neq p_i$).

제한

예제 입력 1

3 3
1 2
2 3
1 3

예제 출력 1

Yes
-1 1 2

힌트

출처

Olympiad > Russian Olympiad in Informatics > Internet Olympiads in Informatics > 2018-2019 Season > March 2, 2019 C번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /