QOJ.ac

QOJ

Límite de tiempo: 1 s Límite de memoria: 512 MB Puntuación total: 70

#13356. 盒子

Estadísticas

Martin 有 $n$ 个标有 $1$ 到 $n$ 正整数的盒子。每个盒子里都有一个玩具。玩具也标有 $1$ 到 $n$ 的正整数,初始时,标号为 $i$ 的玩具在标号为 $i$ 的盒子里。

Martin 偶尔会叫他的 $m$ 个朋友中的一个过来聚会。聚会时,朋友会把玩具从盒子里拿出来玩。在此期间,Martin 更关心盒子。当他们玩腻了之后,朋友会把玩具放回盒子里。但是,他并不一定把每个玩具放回它原来所在的盒子里。

Martin 注意到他的 $m$ 个朋友中,每个人每次打乱玩具的方式都是固定的。更准确地说,每个朋友都有一个属于他自己的包含 $n$ 个正整数的数组 $p_1, \dots, p_n$,这决定了他将玩具放回盒子的方式。这个数组中 $1$ 到 $n$ 的每个正整数恰好出现一次。朋友打乱玩具的方式是:在聚会结束时,标号为 $i$ 的盒子里装的是聚会开始时在标号为 $p_i$ 的盒子里的玩具。注意,由于 $1$ 到 $n$ 的每个正整数在数组中恰好出现一次,因此当所有玩具放回盒子后,每个盒子里将再次恰好有一个玩具。

Martin 现在想回答以下形式的问题:他想知道通过一系列与朋友的聚会,标号为 $a$ 的玩具(初始时在标号为 $a$ 的盒子里)是否可能最终出现在标号为 $b$ 的盒子里。一系列聚会意味着 Martin 可以按任意顺序呼叫他想要的任何朋友。他可以多次呼叫同一个朋友,也可以一次都不呼叫。Martin 需要回答 $q$ 个这样的问题。

输入格式

第一行包含正整数 $n, m$ 和 $q$,分别表示盒子的数量(也是玩具的数量)、Martin 的朋友数量以及问题的数量。

接下来的 $m$ 行,第 $k$ 行包含一个正整数数组 $p_1, \dots, p_n$,用于 Martin 的第 $k$ 位朋友将玩具放回盒子。数组中 $1$ 到 $n$ 的每个正整数恰好出现一次。

接下来的 $q$ 行,每行包含两个正整数 $a$ 和 $b$ ($1 \le a, b \le n$),表示一个问题。

输出格式

按顺序输出 $q$ 行问题的答案:如果玩具可以到达目标盒子,输出 DA,否则输出 NE

数据范围

在每个子任务中,均满足 $1 \le n, m \le 1000, 1 \le q \le 500\,000$。

子任务 分值 数据范围
1 15 $m = 1$
2 10 $1 \le n, m, q \le 100$。此外,对于答案为 DA 的每个问题,存在一个至多包含两次聚会的序列可以达到目标结果。
3 10 $1 \le n, m, q \le 100$
4 35 无附加限制。

样例

输入 1

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

输出 1

DA
NE
DA

输入 2

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

输出 2

DA
DA
NE
NE

输入 3

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

输出 3

DA
NE

说明

第一个样例的说明: 对于第一个问题,标号为 $1$ 的玩具初始时已经在标号为 $1$ 的盒子里,所以答案直接为 DA。 对于第二个问题,注意无论 Martin 呼叫他的朋友多少次,标号为 $1$ 和 $2$ 的盒子的内容都不会改变,所以答案为 NE。 对于第三个问题,注意每次聚会后,标号为 $3$ 和 $4$ 的盒子的内容都会交换,因此仅经过一次聚会,标号为 $3$ 的玩具就会出现在标号为 $4$ 的盒子里,所以答案为 DA

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.