时间0 ms
击败
100%
内存6 MB
击败
92.53%
解题思路:用暴力枚举,把每个字符串以此与word字符串比较,直到比较到word最后一个还是相同的,那k++,否则就进行下一位比较,如果比较位不相同,就重置比较位,word从头开始,sequence从i的下一位开始。
class Solution {
public:
int maxRepeating(string sequence, string word) {
int n1 = word.size()-1;
int ans=0,k = 0;
int i = 0;
int index =0;
int left = i+1;
for(;i<sequence.size();i++){
if(sequence[i] == word[index]){
if(index == n1){
k++;
index=0;
}
else{
index++;
}
}
else{
ans=max(ans,k);
k=0;
i = left;
index =0;
left = i+1;
i--; //因为left已经把+1后的值赋给i,但是循环还是会+1,所以需要-1
}
}
ans=max(ans,k);
return ans;
}
};