CF1463E.Plan of Lectures

提高+/省选-

通过率:0%

时间限制:2.00s

内存限制:512MB

AC君温馨提醒

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

题目描述

Ivan is a programming teacher. During the academic year, he plans to give nn lectures on nn different topics. Each topic should be used in exactly one lecture. Ivan wants to choose which topic will he explain during the 11-st, 22-nd, ..., nn-th lecture — formally, he wants to choose some permutation of integers from 11 to nn (let's call this permutation qq). qiq_i is the index of the topic Ivan will explain during the ii-th lecture.

For each topic (except exactly one), there exists a prerequisite topic (for the topic ii, the prerequisite topic is pip_i). Ivan cannot give a lecture on a topic before giving a lecture on its prerequisite topic. There exists at least one valid ordering of topics according to these prerequisite constraints.

Ordering the topics correctly can help students understand the lectures better. Ivan has kk special pairs of topics (xi,yi)(x_i, y_i) such that he knows that the students will understand the yiy_i-th topic better if the lecture on it is conducted right after the lecture on the xix_i-th topic. Ivan wants to satisfy the constraints on every such pair, that is, for every i∈[1,k]i \in [1, k], there should exist some j∈[1,n−1]j \in [1, n - 1] such that qj=xiq_j = x_i and qj+1=yiq_{j + 1} = y_i.

Now Ivan wants to know if there exists an ordering of topics that satisfies all these constraints, and if at least one exists, find any of them.

伊万是一名编程教师。在学年中,他计划讲授 nn 个不同主题的 nn 节课。每个主题恰好被使用一次。伊万需要确定第 11、第 22、……、第 nn 节课分别讲授哪个主题——形式上,他需要选择一个 11 到 nn 的排列(记为 qq),其中 qiq_i 表示第 ii 节课所讲授的主题编号。

对于每个主题(除恰好一个主题外),均存在一个前置主题(对于主题 ii,其前置主题为 pip_i)。伊万不能在讲授其前置主题之前讲授该主题。根据这些前置约束,至少存在一种合法的主题排序方案。

正确安排主题顺序有助于学生更好地理解课程内容。伊万还有 kk 对特殊主题 (xi,yi)(x_i, y_i),他知道:若主题 yiy_i 的课程紧接在主题 xix_i 的课程之后进行,则学生对主题 yiy_i 的理解效果会更好。因此,伊万希望满足所有这样的约束,即对每个 i∈[1,k]i \in [1, k],均存在某个 j∈[1,n−1]j \in [1, n - 1],使得 qj=xiq_j = x_i 且 qj+1=yiq_{j + 1} = y_i。

现在,伊万想知道是否存在一种满足所有上述约束的主题排序方案;如果存在,他还希望找出其中任意一种方案。

输入格式

The first line contains two integers nn and kk (2≤n≤3⋅1052 \le n \le 3 \cdot 10^5, 1≤k≤n−11 \le k \le n - 1) — the number of topics and the number of special pairs of topics, respectively.

The second line contains nn integers p1p_1, p2p_2, ..., pnp_n (0≤pi≤n0 \le p_i \le n), where pip_i is the prerequisite topic for the topic ii (or pi=0p_i = 0 if the ii-th topic has no prerequisite topics). Exactly one of these integers is 00. At least one ordering of topics such that for every ii the pip_i-th topic is placed before the ii-th topic exists.

Then kk lines follow, the ii-th line contains two integers xix_i and yiy_i (1≤xi,yi≤n1 \le x_i, y_i \le n; xi≠yix_i \ne y_i) — the topics from the ii-th special pair. All values of xix_i are pairwise distinct; similarly, all valus of yiy_i are pairwise distinct.

第一行包含两个整数 nn 和 kk(2≤n≤3⋅1052 \le n \le 3 \cdot 10^5,1≤k≤n−11 \le k \le n - 1),分别表示主题的数量和特殊主题对的数量。

第二行包含 nn 个整数 p1p_1, p2p_2, ..., pnp_n(0≤pi≤n0 \le p_i \le n),其中 pip_i 表示主题 ii 的前置主题(若第 ii 个主题没有前置主题,则 pi=0p_i = 0)。这些整数中恰好有一个为 00。至少存在一种主题排列顺序,使得对每个 ii,第 pip_i 个主题都排在第 ii 个主题之前。

接下来是 kk 行,第 ii 行包含两个整数 xix_i 和 yiy_i(1≤xi,yi≤n1 \le x_i, y_i \le n;xi≠yix_i \ne y_i),表示第 ii 个特殊主题对中的两个主题。所有 xix_i 的值两两不同;同理,所有 yiy_i 的值也两两不同。

输出格式

If there is no ordering of topics meeting all the constraints, print 00.

Otherwise, print nn pairwise distinct integers q1q_1, q2q_2, ..., qnq_n (1≤qi≤n1 \le q_i \le n) — the ordering of topics meeting all of the constraints. If there are multiple answers, print any of them.

如果不存在满足所有约束条件的主题排序方案,则输出 00。

否则,输出 nn 个两两互异的整数 q1q_1, q2q_2, ..., qnq_n(其中 1≤qi≤n1 \le q_i \le n),表示一个满足所有约束条件的主题排序方案。若存在多个可行解,输出任意一个即可。

输入输出样例

  • 输入#1

    5 2
    2 3 0 5 3
    1 5
    5 4

    输出#1

    3 2 1 5 4
  • 输入#2

    5 2
    2 3 0 5 3
    1 5
    5 1

    输出#2

    0
  • 输入#3

    5 1
    2 3 0 5 3
    4 5

    输出#3

    0
  • 输入#4

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

    输出#4

    3 5 2 1 4

输入解题思路,AI测评打分。不知道怎么写?

首页