深信服9.1笔试 Python

第一题做的时候想岔了,只有一半,现在改了改不知道咋样:
def solution(s):
    if s == "":
        return True
    if len(s) % 2 != 0:
        return False
    if len(s) == 2:
        return True if s[0] == s[1] else False
    ts = ""
    for i in s:
        ts += i
        if not s[len(ts):].__contains__(ts[::-1]):
            # 保证ts就是最长字串本身
            ts = ts[:-1]
            break
    # 找不到对称串
    if ts == "":
        return False
    s1 = s[len(ts):]
    # 找出索引
    idx2 = s1.find(ts[::-1])
    # 去掉ts部分
    s2 = s1[:idx2]
    s3 = s1[idx2 + len(ts):]
    # print(f"{s} --> {ts} --> {s2+s3}")
    return solution(s2 + s3)
第二题**33原题

#23届找工作求助阵地##深信服面试#
全部评论
力扣33题原题嘛
点赞 回复 分享
发布于 2022-09-11 22:24 四川
进面试了吗
点赞 回复 分享
发布于 2022-09-14 23:14 天津

相关推荐

点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务