周期串(Python)

周期串(Python),第1张

周期串(Python)

如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串以k为周期。例如abcabcabcabc以3为周期(当然他也以6,12为周期)。输入一个长度不超过100000的串,输出他的最小周期。
tips:

最小周期一定是字符串长度的约数从最小周期的下一个位置开始,跟前面的周期串要一一对应相等

mystr = input()
m_len = len(mystr)
for i in range(1,m_len):
    if m_len%i==0:
        flag = 1
        for j in range(i+1,m_len):
            if mystr[j]!=mystr[j%i]:
                flag = 0
                break
        if flag:
            print(i)
            break

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5711391.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存