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.
Solution:
class Solution {
public boolean rotateString(String A, String B) {
int m = A.length();
int n = B.length();
if (m != n) return false;
if (m == 0) return true;
for (int i = 0; i < m; i ++) {
String C = A.substring(1) + A.substring(0, 1);
if (C.equals(B)) {
return true;
}
A = C;
}
return false;
}
}