用dp(i,j)表示子串s[i..j]可以表示的最小长度。动态转移方程有
dp(i,j) = min{dp(i,k) + dp(k+1,j)},其中k属于[i,j]。s[i..j]是周期串,最小周期为period
则dp(i,j)= min{dp(i,j), dp(i, i + peroid - 1)
代码参考:
OJ/UVa/11022 String Factoring at master · wuli2496/OJ · GitHub
用dp(i,j)表示子串s[i..j]可以表示的最小长度。动态转移方程有
dp(i,j) = min{dp(i,k) + dp(k+1,j)},其中k属于[i,j]。s[i..j]是周期串,最小周期为period
则dp(i,j)= min{dp(i,j), dp(i, i + peroid - 1)
代码参考:
OJ/UVa/11022 String Factoring at master · wuli2496/OJ · GitHub