K
KRYFT Problem Bank
알고리즘 보통 코딩

작업 순서 정하기

위상 정렬로 작업 순서 결정

20분
75점
2개 테스트케이스
#3731

문제 설명

N개의 작업과 작업 간의 선후 관계가 주어집니다. 모든 작업을 완료할 수 있는 순서를 구하세요.

입력 형식

첫 줄: 작업 수 N, 관계 수 M

다음 M줄: A B (A를 완료해야 B 가능)

출력 형식

작업 순서 (불가능하면 -1)

제약 조건

  • 1 ≤ N ≤ 10,000
  • 0 ≤ M ≤ 100,000

예시

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

출력: 1 2 3 4 5 6 (또는 1 3 2 4 6 5 등)

예제 테스트케이스

예제 1 기본
입력
6 6
1 2
1 3
2 4
3 4
4 5
4 6
출력
1 2 3 4 5 6
예제 2 사이클
입력
3 3
1 2
2 3
3 1
출력
-1
실행 버튼을 눌러 코드를 실행하세요.