#AT2251. G - Replace
G - Replace
当前没有测试数据。
G - Replace
Score : $600$ points
Problem Statement
You are given two strings $S$ and $T$ consisting of lowercase English letters.
Takahashi starts with the string $S$. He can perform $K$ kinds of operations any number of times in any order.
The $i$-th operation is the following:
Pay a cost of $1$. Then, if the current string contains the character $C_i$, choose one of its occurrences and replace it with the string $A_i$. Otherwise, do nothing.
Find the minimum total cost needed to make the string equal $T$. If it is impossible to do so, print $-1$.
Constraints
- $1\leq |S|\leq |T|\leq 50$
- $1\leq K\leq 50$
- $C_i$ is
a
,b
,$\ldots$, orz
. - $1\leq |A_i|\leq 50$
- $S$, $T$, and $A_i$ are strings consisting of lowercase English letters.
- $C_i\neq A_i$, regarding $C_i$ as a string of length $1$.
- All pairs $(C_i,A_i)$ are distinct.
Input
Input is given from Standard Input in the following format:
Output
Print the minimum total cost needed to make the string equal $T$. If it is impossible to do so, print $-1$.
ab
cbca
3
a b
b ca
a efg
4
Starting with $S=$ab
, Takahashi can make $T=$cbca
in four operations as follows:
- Replace the $1$-st character
a
inab
withb
(Operation of the $1$-st kind). The string is nowbb
. - Replace the $2$-nd character
b
inbb
withca
(Operation of the $2$-nd kind). The string is nowbca
. - Replace the $1$-st character
b
inbca
withca
(Operation of the $2$-nd kind). The string is nowcaca
. - Replace the $2$-nd character
a
incaca
withb
(Operation of the $1$-st kind). The string is nowcbca
.
Each operation incurs a cost of $1$, for a total of $4$, which is the minimum possible.
a
aaaaa
2
a aa
a aaa
2
Two operations a
$\to$ aaa
$\to$ aaaaa
incur a cost of $2$, which is the minimum possible.
a
z
1
a abc
-1
No sequence of operations makes $T=$z
from $S=$a
.