看到這題我的與第一印象是kmp求最小迴圈節,只要迴圈節的個數是2就肯定符合條件,顯然這是對的,但交上去就是有乙個點過不了,原來上面的那個條件不充分,如果個數是2的倍數一樣是符合條件的,如aaaaaa,wa在了這裡,改一下就過了。
看了討論區才知道,乙個對串不論怎麼變換都還是對串,是我想多了orz。還是發一下我的吧
#include#includeusing namespace std;
const int maxn = 1e6+5;
int next[maxn];
char p[maxn];
int plen;
void getnext()
else
}}int main()
return 0;
}
51nod 1347 旋轉字串
s 0.n 1 是乙個長度為n的字串,定義旋轉函式left s s 1 n 1 s 0 比如s abcd left s bcda 乙個串是對串當且僅當這個串長度為偶數,前半段和後半段一樣。比如 abcabc 是對串,aabbcc 則不是。現在問題是給定乙個字串,判斷他是否可以由乙個對串旋轉任意次得到...
51nod 1347 旋轉字串
s 0 n 1 是乙個長度為n的字串,定義旋轉函式left s s 1 n 1 s 0 比如s abcd left s bcda 乙個串是對串當且僅當這個串長度為偶數,前半段和後半段一樣。比如 abcabc 是對串,aabbcc 則不是。現在問題是給定乙個字串,判斷他是否可以由乙個對串旋轉任意次得到...
51nod 1347 旋轉字串
1347 旋轉字串 基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 s 0.n 1 是乙個長度為n的字串,定義旋轉函式left s s 1 n 1 s 0 比如s abcd left s bcda 乙個串是對串當且僅當這個串長度為偶數,前半段和後半段一樣。比如 ab...