對串 旋轉字串

2021-08-11 15:19:53 字數 520 閱讀 3203

題目:旋轉字串(對串)

描述s[0...n-1]是乙個長度為n的字串,定義旋轉函式left(s)=s[1…n-1]+s[0].比如s=」abcd」,left(s)=」bcda」.乙個串是對串當且僅當這個串長度為偶數,前半段和後半段一樣。比如」abcabc」是對串,」aabbcc」則不是。

現在給你字串,判斷他是否可以由乙個對串旋轉任意次得到。 輸入

第1行:給出乙個字串(字串非空串,只包含小寫字母,長度不超過1000000) 輸出

對於每個測試用例,輸出結果佔一行,如果能,輸出yes,否則輸出no。

樣例輸入1

aa

ab

樣例輸出1

yes

no

思路:乙個個試過去,能分成兩個一樣的子串的就肯定可以,當然字串為奇數的就不用考慮了~~

#include#includeusing namespace std;

int main()

else

}if(t) cout << "yes"<

字串 字串的旋轉

時間複雜度為o m n 空間複雜度為o 1 include include include void leftshiftone char str,int n void leftrotatestring char str,int n,int m int main 輸出 before rotate ab...

左旋轉字串(字串)

題目描述 組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!思路一 pub...

字串旋轉

問題 把字串前面的若干個字元移動到字串的尾部。如把字串abcdef前2位字元移到後面得到字串cdefab。要求時間對長度為n的字串操作的複雜度為o n 輔助記憶體為o 1 看到大多數的帖子都是進行三次旋轉 如 個人感覺這思路確實比較新穎,但是總感覺有點麻煩了,個人思路如下 include inclu...