QOJ.ac

QOJ

時間限制: 2 s 記憶體限制: 2048 MB 總分: 100

#1131. 穿越

统计

你知道“Just Odd Investigations Laboratory”吗?这家实验室的业务是进行“纯粹的奇数调查”。以下我们简称其为 JOI 实验室。

近年来,世界各地的几处历史遗迹中发现了广阔的花园,里面生长着绚丽的花朵。JOI 实验室发现,这些花园中的花朵属于新物种,它们的基因具有相似的特征。这些新花朵的基因是长度为 $N$、由 J、O、I 组成的字符串。这些字符串被称为基因序列。

你是 JOI 实验室的一名研究员。你最初拥有三种新物种的花,它们的基因序列分别为 $S_A, S_B, S_C$。

你可以通过一种称为“杂交”的操作,从两朵新物种的花中获得一朵新的花。新花朵基因序列的第 $i$ 个字符($1 \le i \le N$)由以下规则确定:

  • 如果两朵花基因序列的第 $i$ 个字符相同,则新花朵基因序列的第 $i$ 个字符为该相同字符。
  • 如果两朵花基因序列的第 $i$ 个字符不同,则新花朵基因序列的第 $i$ 个字符为 J、O、I 中与这两个字符都不同的那个字符。

换句话说,如果两朵花基因序列的第 $i$ 个字符分别为 $c_1$ 和 $c_2$,则新花朵基因序列的第 $i$ 个字符 $c_3$ 由下表给出:

$c_1$ J J J O O O I I I
$c_2$ J O I J O I J O I
$c_3$ J I O I O J O J I

你可以多次使用同一朵花进行杂交。如果你通过杂交获得了一朵新花,你也可以将其用于后续的杂交。

为了获得更美丽的花朵,JOI 实验室提出了编号从 $0$ 到 $Q$ 的 $(Q + 1)$ 个基因序列作为候选基因序列。你将获得一份描述这些候选基因序列的列表。该列表包含一个字符串 $T_0$,以及对于每个 $j$($1 \le j \le Q$),包含整数 $L_j, R_j$ 和一个字符 $C_j$。候选基因序列的生成方式如下:

  • 候选基因序列 $0$ 为 $T_0$。
  • 候选基因序列 $j$($1 \le j \le Q$)由候选基因序列 $j - 1$ 通过将第 $L_j$ 位到第 $R_j$ 位的字符替换为字符 $C_j$ 得到。

编写一个程序,给定整数 $N$、三朵初始花的基因序列以及描述候选基因序列的列表,判断对于每个候选基因序列,是否可以通过初始的三朵花经过零次或多次杂交获得该基因序列。

输入格式

从标准输入读取以下数据:

$N$ $S_A$ $S_B$ $S_C$ $Q$ $T_0$ $L_1 \ R_1 \ C_1$ $\vdots$ $L_Q \ R_Q \ C_Q$

输出格式

向标准输出写入 $(Q + 1)$ 行。在第 $(j + 1)$ 行($0 \le j \le Q$)中,如果可以通过初始的三朵花经过零次或多次杂交获得候选基因序列 $j$,则输出 Yes,否则输出 No。

数据范围

  • $1 \le N \le 200\,000$。
  • $S_A, S_B, S_C$ 是长度为 $N$ 的字符串。每个字符均为 J、O 或 I。
  • $1 \le Q \le 200\,000$。
  • $T_0$ 是长度为 $N$ 的字符串。每个字符均为 J、O 或 I。
  • $1 \le L_j \le R_j \le N$($1 \le j \le Q$)。
  • $C_j$ 为 J、O 或 I($1 \le j \le Q$)。

子任务

  1. (3 分) $S_A = S_B = S_C$,$N \le 100$。
  2. (23 分) $S_A = S_B = S_C$。
  3. (23 分) $N \le 100$。
  4. (51 分) 无附加限制。

样例

样例输入 1

4
JOJO
JJOI
OJOO
3
IJOJ
1 4 O
2 2 J
2 4 I

样例输出 1

Yes
No
Yes
Yes

说明 1

三朵初始花的基因序列分别为 JOJO、JJOI 和 OJOO。

  1. $T_0$ 为 IJOJ。由于可以通过 JJOI 与 OJOO 杂交得到 IJOJ,输出 Yes。
  2. $T_1$ 为 OOOO。由于无法通过三朵初始花经过零次或多次杂交得到 OOOO,输出 No。
  3. $T_2$ 为 OJOO。由于初始即拥有 OJOO,无需杂交,输出 Yes。
  4. $T_3$ 为 OIII。可以通过 JJOI 与 OJOO 杂交得到 IJOJ,然后通过 JOJO 与 IJOJ 杂交得到 OIII。因此,输出 Yes。

样例输入 2

3
JOI
JOI
JOI
2
OJI
1 2 O
1 1 J

样例输出 2

No
No
Yes

说明 2

三朵初始花的基因序列均为 JOI。

  1. $T_0$ 为 OJI。由于无法通过杂交得到该花,输出 No。
  2. $T_1$ 为 OOI。由于无法通过杂交得到该花,输出 No。
  3. $T_2$ 为 JOI。由于可以得到该花,输出 Yes。

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.