图森破OA

str1和str2 长度相同 求最少步数把str1变成str2 每次改变字母不是只改变一个 而是把所有相同字母都改变 另外引入一个字符’*’ 可以作为中间状态
举例
accs -> eeec需要3步 accs -> eccs -> eees -> eeec
abb -> baa需要3步 abb -> *bb -> *aa -> baa
如果不能转换 返回-1

我觉得这是一道dp题 第一步用dp来算把两个stribg变成isomorphic strings的最短步数k

第二步则是数学问题 查找有多少组对应位置的字母不一样 如果有n组 答案是k+2n-1步 例子一的倒数第二个状态和target string是isomorphic,然后是1组对应char不同 所以答案k+1,例子二的初始状态和target string是isomorphic,有两组char不同,所以k+3。

第二部的关键说的不清楚 一组不同就是有一个对应的字母不同 比如 abbc和affc有一组 abc和cba有三组 aaaa和bbbb有一组

这题会不会是lc 1153的变种,算总path的长度?

嗯 思路基本一致