编程题
### 问题描述 小蓝有很多齿轮,每个齿轮的凸起和凹陷分别用一个字符表示,一个字符串表示一个齿轮。 ![图片描述](https://dn-simplecloud.shiyanlou.com/questions/uid1792586-20230909-1694228068011) 如果两个齿轮的**对应位**分别是**同一个字母**的大小写,我们称这两个齿轮是契合的。 例如:`AbCDeFgh` 和 `aBcdEfGH` 就是契合的,但是 `abc` 和 `aBC` 不是契合的。 这天,小蓝的弟弟小桥从抽屉里拿来了两个齿轮,小蓝想知道,这俩个齿轮是不是契合的。 特别需要注意的是,齿轮是环形的,所以是可以旋转的(顺时针和逆时针均可),如果是契合的,小蓝还想让你告诉他,最少将第一个齿轮旋转多少位,两个齿轮可以完全契合在一起。 例如: `AbbCd` 与 `BcDaB`,在将第一个齿轮逆时针旋转两位后,变成 `bCdAb` ,两个齿轮就完全契合在一起了。 ### 输入格式 第一行输入一个正整数 $n$ ,代表两个齿轮的长度。 第二行输入一个长度为 $n$ 的字符串 $S$ ,代表第一个齿轮。 第三行输入一个长度为 $n$ 的字符串 $T$ ,代表第二个齿轮。 ### 输出格式 第一行输出一个字符串: `Yes` 或者 `No` 。代表两个齿轮是否契合。 如果可以契合,第二行输出一个整数,代表需要旋转的位数。 如果不可以契合,不用多余输出。 ### 样例输入 ``` 5 AbbCd BcDaB ``` ### 样例输出 ``` Yes 2 ``` ### 评测数据范围 数据范围: $1 \le n \le 10^6 $ 。 保证字符串只包含大小写字母。
查看答案
赣ICP备20007335号-2