배열 A 찾기
시간 제한2초메모리 제한512 MB
크기 N인 배열 A 중 B보다 사전 순으로 뒤에 오면서 M개의 A[i] < A[j] 조건을 만족하는 것 가운데 사전 순으로 가장 앞서는 배열을 구하고, 없으면 -1을 출력한다.
문제
다음 조건을 만족하는 배열 A를 찾아보자.
- 크기는 N이고, 2×109보다 작거나 같은 자연수로 이루어져 있다.
- 크기가 N인 배열 B보다 사전 순으로 뒤에 온다.
- M개의 (i, j)쌍은 A[i] < A[j]를 만족한다.
입력
첫째 줄에 배열의 크기 N과 쌍의 개수 M이 주어진다. 둘째 줄에는 B[1], B[2], ..., B[N]이 주어진다. 셋째 줄부터 M개의 줄에는 A[i] < A[j]를 의미하는 i, j가 주어진다.
출력
문제의 조건을 만족하는 배열 A 중에서 사전 순으로 가장 앞서는 것을 출력한다. 만약, 조건을 만족하는 배열이 없는 경우에는 -1을 출력한다.
제한
- 1 ≤ N ≤ 100,000
- 0 ≤ M ≤ 100,000
- 1 ≤ B[i] ≤ 109
- 1 ≤ i, j ≤ N, i ≠ j