poj1961_KMP算法中next數組的應用

1.題意:

給定一個字符串,要求對字符串的每個位置i進行判斷,判斷前i個字符是否可以寫成某個別的字符串的重複,若可以,求出最多可以寫成多少個別的字符串的重複。比如串aabaabaab可以寫成3個aab的重複

2.解法

kmp算法中next數組的應用,由於next[i]=k表示字符串a1...ai最多前k個字符和後k個字符對應相同,這樣可以找出向前移動的字符個數L,即爲最短的重複串長(循環節),重複次數爲(i/i-next[i])

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章