当前位置:网站首页>力扣 459. 重复的子字符串

力扣 459. 重复的子字符串

2022-07-07 17:53:00 Tomorrowave

459. 重复的子字符串

给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。

示例 1:

输入: s = “abab”
输出: true
解释: 可由子串 “ab” 重复两次构成。

思路:

首先构造一个让任意长度的字符串去匹配另一个字符串,遍历抽取字串,符合不符合条件,荣获在主函数里面遍历一遍母串

代码部分

class Solution:
    def isPrefixMultiple(self,s:str,lengh):
        cnt=len(s)//lengh
        for i in range(cnt):
            for j in range(lengh):
                if s[i*lengh+j]!=s[j]:
                    return False
        return True

    def repeatedSubstringPattern(self, s: str) -> bool:
        nn=len(s)
        for i in range(1,nn):
            if nn%i==0:
                if self.isPrefixMultiple(s,i):
                    return True

        return False
原网站

版权声明
本文为[Tomorrowave]所创,转载请带上原文链接,感谢
https://blog.csdn.net/m0_58381606/article/details/125568447