定义函数funG (s),返回字符串s中重复的子字符串的最大长度
def funG(s):
for i in range(len(s)-1,0,-1):
a = []
for j in range(0, len(s)-i+1):
a.append(s[j:j+i])
if len(a)!=len(set(a)):
return i
funG('ababababa')
>>> def funG(s):
c_max = 1 if len(s) else 0
for i in range(len(s)-1):
next = i+1
for j in range(s[next:].count(s[i])):
k = s[next:].index(s[i]) + next
c = 0
for u,v in zip(s[i:],s[k:]):
if u == v:
c += 1
else:
break
c_max = max(c, c_max)
next = k+1
return c_max
>>> funG('ababababa')
7
>>> funG('abc123ababababc123ababab')
12
def funG(s):
for i in range(len(s)-1,0,-1):
a = []
for j in range(0, len(s)-i+1):
a.append(s[j:j+i])
if len(a)!=len(set(a)):
return i
funG('abc123ababababc123ababab')