题解 | 中心扩展法#密码截取#

密码截取

http://www.nowcoder.com/practice/3cd4621963e8454594f00199f4536bb1

def spread(left,right):
    ans = 0
    global n
    global s
    while left >=0 and right<= n-1 and s[left]==s[right]:
        ans = right-left+1
        left -=1
        right +=1
    return ans

while True:
    try:
        s = input()
        max_ans = 0
        n = len(s)
        for i in range(n):
            ans1 = spread(i, i)
            ans2 = spread(i, i+1)
            max_ans=max(ans1,ans2,max_ans)
        print(max_ans)
    except:
        break
      
                  
        

这里需要注意中心点可能一个字符也可能是两个字符。

全部评论

相关推荐

喜欢走神的孤勇者练习时长两年半:池是池,发是发,我曾池,我现黑
点赞 评论 收藏
分享
一名愚蠢的人类:多少games小鬼留下了羡慕的泪水
投递荣耀等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务