每日小题4

# 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。
#
# 示例 1:
#
# 输入: "babad"
# 输出: "bab"
# 注意: "aba" 也是一个有效答案。
# 示例 2:
#
# 输入: "cbbd"
# 输出: "bb"
s='babad'
max=0
for i in range(len(s)):
for a in range(len(s)):
if s[i:a+1]==s[i:a+1:][::-1]:
if max<len(s[i:a+1]):
max=len(s[i:a+1])
print(max)

str = ""
for i in range(2*len(s)-1):#1,2,3,4,5累加等于2的它的总数的次方减1
if i%2 == 0:
start = end = i//2
while start>=0 and end<len(s) and s[start]==s[end]:
start-=1
end+=1
else:
start = (i-1) // 2
end = (i+1) //2
while start>=0 and end<len(s) and s[start]==s[end]:
start-=1
end+=1
if len(str)<=(end-start-1):
str=s[start+1:end]
return str

posted @ 2019-02-18 18:28  呼呼嘻嘻  阅读(110)  评论(0编辑  收藏  举报