一、题目
给你一个字符串 sequence
,如果字符串 word
连续重复 k
次形成的字符串是 sequence
的一个子字符串,那么单词 word
的 重复值为 k
。单词 word
的 最大重复值 是单词 word
在 sequence
中最大的重复值。如果 word
不是 sequence
的子串,那么重复值 k
为 0
。
给你一个字符串 sequence
和 word
,请你返回 最大重复值 k
。
二、思路
通过sequence、word长度可以判断出可能的最大重复值k(Ls//Lw),子字符串可表示为word*i(k~0),然后遍历sequence,如果有匹配的就返回i的值。
三、代码
class Solution:
def maxRepeating(self, sequence: str, word: str) -> int:
Ls,Lw=len(sequence),len(word)
t=Ls//Lw
if t==0:
return 0
for i in range(t,0,-1):
s=word*i
if s in sequence:
return i
return 0