题意简述
给定一个长度 < = 1 e 5 <=1e5 <=1e5的字符串 S S S,请你求出 S S S所有前缀中,出现次数乘以前缀长度的最大值。
思路框架
求一遍 n e x t next next然后 d p [ n e x t [ i ] ] + = d p [ i ] dp[next[i]]+=dp[i] dp[next[i]]+=dp[i],求 i × d p [ i ] i\times dp[i] i×dp[i]的最大值。
具体思路
前缀的出现次数? K M P KMP KMP? A C AC AC自动机?
但是如果要一个一个弄的话,无论如何都要 O ( n 2 ) O(n^2) O(n2<