【leetcode】459.重复的子字符串

文章目录

题目

459.重复的子字符串

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

示例 1:

输入: s = "abab"

输出: true

解释: 可由子串 "ab" 重复两次构成。

示例 2:

输入: s = "aba"

输出: false

示例 3:

输入: s = "abcabcabcabc"

输出: true

解释: 可由子串 "abc" 重复四次构成。 (或子串 "abcabc" 重复两次构成。)

题解

枚举

python 复制代码
class Solution(object):
    def repeatedSubstringPattern(self, s):
        """
        :type s: str
        :rtype: bool
        """
        # 枚举
        n = len(s)
        for i in range(1, n // 2 + 1):
            if n % i == 0:
                # 获取当前子串
                substring = s[:i]
                # 检查是否能重复构成整个字符串
                if substring * (n // i) == s:
                    return True
        return False
        
相关推荐
.道阻且长.30 分钟前
5.LeetCode算法习题讲解--双指针--有效三角形的个数
算法·leetcode·职场和发展
ltl41 分钟前
向量库与图 RAG:HNSW、DiskANN 到 GraphRAG
linux
我是海飞1 小时前
杰理JL703N SSD1306 OLED(128x64) 点阵屏移植说明
单片机·算法·嵌入式·音频·杰理
学代码的CJY1 小时前
Linux 库制作与原理:静态库、动态库、ELF 与动态链接完全指南
linux·运维·服务器
wabs6662 小时前
关于图论【最短路径之Bellman_ford 算法(单源有限最短路)|卡码网96.城市间货物运输III的思考】
数据结构·算法·图论·卡码网·bellman_ford·单源有限最短路
呱呱巨基3 小时前
Linux 查找命令
linux·笔记·学习·查找命令
basketball6163 小时前
软考中级网络工程师 第4章 无线通信网 备考总结
linux·服务器·网络·网络工程师·软考
lsylalalala4 小时前
常见的排序算法1
数据结构·算法·排序算法
好评1244 小时前
【Linux】进程信号
linux·运维·服务器
想吃火锅10054 小时前
【leetcode】54. 螺旋矩阵
算法·leetcode·矩阵