2022年10月10日月曜日

AtCoder Beginner Contest 272

 Fが解けず。

コンテスト後のツイート

F - Two Strings

 解説AC。

 コンテスト中、Suffix arrayを見てこれを使うのでは? と思い、S、TをSuffix arrayを作るようにソートすれば、尺取りで解けそうと考えた。が、同じ文字が続く場合や、SとT(を回転させたもの)が一致するときの処理が上手くできなかった。

 Suffix arrayをもっと上手く使えないか? と考えるべきだった。

 SやTを回転させたもの全てを調べたいので、S+S、T+TにSuffix arrayを使う。
 さらに、SとTを直接比較したいので、S+S+T+TにSuffix arrayを使う。
 そして、同じ文字が続くときの処理のため、S+S+"a"*N+T+T+"z"*NにSuffix arrayを使うと答えが得られる。

0 件のコメント:

コメントを投稿