AT_abc399_e [ABC399E] Replace
题目描述
[problemUrl]: https://atcoder.jp/contests/abc399/tasks/abc399_e
给定一个正整数 $N$ 以及两个长度为 $N$ 的小写英文字母字符串 $S$ 和 $T$。
请判断是否可以通过重复以下操作(允许 0 次操作)将 $S$ 变为 $T$。若可能,还需输出所需的最小操作次数。
**操作**:
选择两个小写英文字母 $x$ 和 $y$,将 $S$ 中 **所有** 出现的 $x$ 替换为 $y$。
输入格式
输入通过标准输入给出,格式如下:
> $N$
> $S$
> $T$
输出格式
若可以将 $S$ 变为 $T$,则输出所需的最小操作次数;否则输出 $-1$。
说明/提示
### 约束条件
- $1 \leq N \leq 2 \times 10^5$
- $N$ 为整数
- $S$ 和 $T$ 均为长度为 $N$ 的小写英文字母字符串
### 样例解释 1
通过以下 4 次操作可将 $S$ 变为 $T$:
1. 选择 $x=$ `b`, $y=$ `c`,操作后 $S=$ `afcfda`
2. 选择 $x=$ `a`, $y=$ `b`,操作后 $S=$ `bfcfdb`
3. 选择 $x=$ `f`, $y=$ `k`,操作后 $S=$ `bkckdb`
4. 选择 $x=$ `d`, $y=$ `b`,操作后 $S=$ `bkckbb`(与 $T$ 一致)
由于无法在 3 次或更少操作内完成,最小操作次数为 4。
### 样例解释 2
$S$ 与 $T$ 初始时已一致,无需任何操作。
### 样例解释 3
无论如何操作,都无法将 $S$ 变为 $T$。
翻译由 DeepSeek R1 完成