首页 > 试题广场 >

计算重复字符串长度

[编程题]计算重复字符串长度
  • 热度指数:1608 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 128M,其他语言256M
  • 算法知识视频讲解
请从字符串中找出至少重复一次的子字符串的最大长度

输入描述:
字符串,长度不超过1000


输出描述:
重复子串的长度,不存在输出0
示例1

输入

ababcdabcefsgg

输出

3

说明

abc为重复的最大子串,长度为3
while True:
    try:
        inp=input().strip()
        #print(inp)
        lenth=len(inp)
        #print(lenth)
        #max_num=1
        list1=[]
        for i in range(lenth-1,0,-1):
            for j in range(lenth-i):
                index1=inp[j:j+i]
                list1.append(index1)
        #print(list1)
        result=0
        for i in list1:
            if list1.count(i)>1:
                result=len(i)
                break
        print(result)

    except:
        break
编辑于 2019-07-27 21:04:03 回复(0)


s = input() t = 1 a = [] if len(s) == len(set(s)): print(0) else: 
		
    for i in range(len(s)):
a.append(len(s[t:i])) if s[t-1:i] in s[i:]: continue else: t=i print(max(a))

   
发表于 2019-04-15 18:36:47 回复(0)