很明顯一道區間dp題,對於區間\([l,r]\)的字串,如果它的字串是最優摺疊的,那麼它的最優結果要麼是所有分割出的字串最優結果之和,要麼是在斷點處恰好有這個區間的週期串可以進行摺疊,摺疊後產生的結果
狀態轉移
for(ri len=2;len<=n;len++)
const int maxn=205;
int n,m,f[maxn][maxn];
char s[maxn];
inline int check(int l,int r,int rr)
int cnt=0;
while(x)
return cnt;
}int main()}}
}printf("%d\n",f[1][n]);
return 0;
}
P4302 SCOI2003 字串摺疊
演算法 區間動態規劃 f i j f i j f i j 表示處理i到j i到ji到 j這段區間所需要的最小代價 兩種轉移方法 一.標準的區間dpdp dp的轉移f i j min f i j f i k f k 1 j f i j min f i j f i k f k 1 j f i j mi ...
P4302 SCOI2003 字串摺疊
摺疊的定義如下 乙個字串可以看成它自身的摺疊。記作s s x s 是x x 1 個s連線在一起的串的摺疊。記作x s ssss s x個s 如果a a b b 則ab a b 例如,因為3 a aaa,2 b bb,所以3 a c2 b aaacbb,而2 3 a c 2 b aaacaaacbb ...
洛谷P4302 字串摺疊
摺疊的定義如下 乙個字串可以看成它自身的摺疊。記作 s s x s 是x x 1 個s連線在一起的串的摺疊。記作 x s ssss s x個s 如果a a b b 則ab a b 例如,因為3 a aaa,2 b bb,所以3 a c2 b aaacbb,而2 3 a c 2 b aaacaaacb...