0(後ろからは切らない)の中から一番いい組み合わせを探せばよい。10^10=100億・・・とても無理。最大10^5の数にもなるサフィックスの候補から、ベストなものを素早く選ぶ工夫が必要になってくる。よいサフィックス順に並べてみると0110011101000101001000110000000111101111110011011010101110001001となる。ここで、上位のビットが優先される事が分かる。高速にベストなサフィックスを見つけることが出来る。全体の計算量はO(NlogM)となる。注意点として、プレフィックスによって、サフィックスの候補が変わってくる所。プレフィックスはソーセージ全て使うものから全く使わないものの順番で調べていき、その都度、使用できるようになるサフィックスの候補を二分木に足していけばよい。"ABBADiv1"月別アーカイブリンクはてなブログブログをはじめる(無料)お知らせはてなブログをはじめよう!Ekaingさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。