旋转字符串

题目链接

Solution

直接模拟即可。
枚举旋转了几位,然后求出旋转后的字符串,比较是否与原字符串相同。
注意一下,如果两个字符串长度不同,无论如何旋转都不可能相同的,直接返回false。

Code

class Solution {
public:
    bool solve(string A, string B) {
        if (A.size() != B.size()) return false;
        int n = A.size();
        for (int i = 1; i < n; ++i) {
            string tmp;
            for (int j = i; j < n; ++j) tmp += A[j];
            for (int j = 0; j < i; ++j) tmp += A[j];
            if (tmp == B) return true;
        }
        return false;
    }
};