U1296 「USACO 2023.01 Silver」Find and Replace

暂无评定 传统题 USACO2023Silver 上传者
时间限制2000ms
内存限制256MiB
通过 / 提交0/0

U1296「USACO 2023.01 Silver」Find and Replace

暂无评定 传统题 USACO2023Silver 上传者
时间限制2000ms
内存限制256MiB
通过 / 提交0/0

本题使用标准输入、标准输出,无需读写题面中提到的文件。

题目描述

Bessie 正在使用最新最强的文本编辑软件 miV!她从一个仅由大小写英文字母组成的输入字符串开始,希望将其转换为某个输出字符串。只需一次按键,miV 允许她把字符串中某个英文字母 c1c_1 的所有出现位置都替换为另一个英文字母 c2c_2。例如,给定字符串 aAbBa\texttt{aAbBa},如果 Bessie 选择 c1c_1 为 'a'、c2c_2 为 'B',则该字符串会变为 BAbBB\texttt{BAbBB}。 Bessie 很忙,因此对于 TT (1≤T≤101\le T\le 10) 个相互独立的测试用例,请输出将输入字符串变为目标输出字符串所需的最少按键次数。

输入格式

第一行包含 TT,表示独立测试用例的数量。 接下来 TT 组,每组两行,分别给出一个输入字符串和一个输出字符串,且二者长度相同。所有字符均为大小写英文字母(A 到 Z 或 a 到 z)。所有字符串长度之和不超过 10510^5。

输出格式

对于每个测试用例,输出将输入字符串变为输出字符串所需的最少按键次数;如果无法做到,则输出 −1-1。

4
abc
abc
BBC
ABC
abc
bbc
ABCD
BACD
0
-1
1
3

提示

第一个输入字符串与其输出字符串相同,因此不需要任何按键。 第二个输入字符串无法变为其输出字符串,因为 Bessie 无法在保留另一个为 'B\texttt{B}' 的同时,把某一个 'B\texttt{B}' 改成 'A\texttt{A}'。 第三个输入字符串可以通过将 'a\texttt{a}' 改为 'b\texttt{b}' 来变成其输出字符串。 最后一个输入字符串可以这样变为其输出字符串: $\texttt{ABCD} \rightarrow \texttt{EBCD} \rightarrow \texttt{EACD} \rightarrow \texttt{BACD}$。 SCORING: Inputs 2-6: 每个字符串长度至多为 5050。 Inputs 7-9: 所有字符串仅由小写字母 'a\texttt{a}' 到 'e\texttt{e}' 组成 Inputs 10-15: 无额外限制。 题目来源:Benjamin Qi

来源

USACO|2023|Silver