1. 程式人生 > >796. Rotate String(python+cpp)

796. Rotate String(python+cpp)

題目:

We are given two strings, A and B. A shift on A consists of taking string A and moving the leftmost character to the rightmost position. For example, if A = ‘abcde’, then it will be ‘bcdea’ after one shift on A. Return True if and only if A can become B after some number of shifts on A. Example 1:

Input: A = 'abcde', B = 'cdeab' 
Output: true

Example 2:

Input: A = 'abcde', B = 'abced' 
Output: false 

Note: A and B will have length at most 100.

解釋: 一般看到rotate就用重複。 python程式碼:

class Solution(object):
    def rotateString(self, A, B):
        """
        :type A: strs
        :type B: str
        :rtype: bool
        """
return len(A)==len(B) and B in A+A

c++程式碼:

class Solution {
public:
    bool rotateString(string A, string B) {
        string C=A+A;
        if (A.size()==B.size() &&C.find(B)!=string::npos)
            return true;
        else
            return false;
    }
};

總結: 學會使用c++中,string

find()函式。