恰恰舞步 C++


假設我們有兩個字串 s 和 t。我們需要檢查 s 是否是 t 的旋轉,換句話說,是否可以透過旋轉 s 得到 t?

因此,如果輸入類似於 s = "helloworld" 和 t = "worldhello",則輸出將為 True。

為了解決這個問題,我們將遵循以下步驟:

  • 如果 s0 的大小不等於 s1 的大小,則:

    • 返回 false

  • s := s0 連線 s0

  • 如果 s1 在 s 中,則返回 true,否則返回 0。

讓我們看看下面的實現以獲得更好的理解:

示例

 線上演示

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   bool solve(string s0, string s1) {
      if(s0.size() != s1.size())
      return false;
      string s = s0 + s0;
      return s.find(s1) != string::npos;
   }
};
int main(){
   Solution ob;
   cout << (ob.solve("helloworld", "worldhello"));
}

輸入

"helloworld", "worldhello"

輸出

1

更新於: 2020年9月2日

159 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.