Description:
ある文字列に対して、
1文字削除, 1文字追加, 1文字変更, 隣接する2文字を交換
の操作をx回する事で、別の文字列に出来る時、「この二つの文字列の距離はx」という事にする。
距離がd以下の名前のペアを、紛らわしいペアという事にする。(0
ペアは、辞書式順で早いほうを1つ目とし、答えのペア全体も辞書式順で並べよ。
Answer:
2文字の交換操作が無ければDNA GAPの問題と同じで、文字列長の2乗のDPで距離を求めることが出来る。
2文字の交換操作が入るとややこしくなるが、紛らわしいの距離が最大でも2な為、この限りで出来る事を列挙してDPに組み込んでしまえば問題が無い。
具体的には、ABをコスト1でBAにする事と、ABをコスト2でBCAにする事だけ考慮すればよい。
Source: