WAC190.字串变换

传统题 时间 2000 ms 内存 256 MiB 8 尝试 1 已通过 1 标签

字串变换

已知有两个字串 AA, BB 及一组字串变换的规则(至多 66 个规则):

A_1→B_1A\_1 \to B\_1

A_2→B_2A\_2 \to B\_2

…

规则的含义为:在 AA 中的子串 A_1A\_1 可以变换为 B_1B\_1、A_2A\_2 可以变换为 B_2…B\_2…。

例如:AA=abcd BB=xyz

变换规则为:

abc →\to xu ud →\to y y →\to yz

则此时,AA 可以经过一系列的变换变为 BB,其变换的过程为:

abcd →\to xud →\to xy →\to xyz

共进行了三次变换,使得 AA 变换为 BB。

注意,一次变换只能变换一个子串,例如 AA=aa BB=bb

变换规则为:

a →\to b

此时,不能将两个 a 在一步中全部转换为 b,而应当分两步完成。

输入格式

输入格式如下:

AA BB

A_1A\_1 B_1B\_1

A_2A\_2 B_2B\_2

… …

第一行是两个给定的字符串 AA 和 BB。

接下来若干行,每行描述一组字串变换的规则。

所有字符串长度的上限为 2020。

输出格式

若在 1010 步(包含 1010 步)以内能将 AA 变换为 BB ,则输出最少的变换步数;否则输出 NO ANSWER!。

Samples

abcd xyz
abc xu
ud y
y yz
3

在线编程 IDE

建议全屏模式获得最佳体验