执行用时:7 ms, 在所有 Java 提交中击败了94.48%的用户
内存消耗:40.2 MB, 在所有 Java 提交中击败了53.66%的用户
1. 很简单。就是暴力了。
2. 利用整除剪枝。
class Solution {
public boolean repeatedSubstringPattern(String s) {
int length = s.length();
int modNumber = length/2;
for(int i = modNumber; i>=1; i--){
modNumber = i;
if(length % modNumber != 0){
continue;
}
int step = modNumber;
int index = 0;
String comparedString = s.substring(index, index + modNumber);
index = index + modNumber;
while( index < length){
if(!s.substring(index, index + modNumber).equals(comparedString)){
break;
}
index = index + modNumber;
}
if(index >= length){
return true;
}
}
return false;
}
}
网友评论