AT_agc052_e [AGC052E] 3 Letters

题目描述

由 `A`、`B`、`C` 组成的字符串,如果任意连续的 $2$ 个字符都不相同,则称为**好**字符串。例如,`ABABAB` 和 `ABC` 是好字符串,而 `ABBA` 和 `AABBCC` 不是好字符串。 给定两个长度为 $N$ 的**好**字符串 $S$ 和 $T$。每次操作,你可以从 $S$ 中任选一个字符,将其变为 `A`、`B`、`C` 中的另一个字符。操作后,$S$ 仍需保持为**好**字符串。 请问最少需要多少次操作,才能将 $S$ 变为 $T$。可以证明一定可以在有限次操作内完成。

输入格式

输入从标准输入中给出,格式如下: > $N$ $S$ $T$

输出格式

输出将 $S$ 变为 $T$ 所需的最小操作次数。

说明/提示

## 限制 - $1 \leq N \leq 5 \times 10^5$ - $S$ 是由 `A`、`B`、`C` 组成的长度为 $N$ 的**好**字符串。 - $T$ 是由 `A`、`B`、`C` 组成的长度为 $N$ 的**好**字符串。 ## 样例解释 1 以下是用 $6$ 次操作达成目标的一个例子:`CABC` $\to$ `BABC` $\to$ `BCBC` $\to$ `BCAC` $\to$ `ACAC` $\to$ `ABAC` $\to$ `CBAC`。在这种情况下,至少需要 $6$ 次操作。 由 ChatGPT 4.1 翻译