算法题:M型字符串(Python)

题目

在这里插入图片描述
在这里插入图片描述

解法

def ishuiwen(s):
    return s==s[::-1]

def isM(s):
    if ishuiwen(s)==False:
        return False
    length=len(s)
    if len(s)%2==0:
        return ishuiwen(s[:int(len(s)/2)]) and ishuiwen(s[int(len(s)/2):])
    if len(s)%2==1:
        return ishuiwen(s[:int(len(s)/2)+1]) and ishuiwen(s[int(len(s)/2):])
s=input()
count=0
for i in range(len(s)):
    l=s[:i+1]
    if isM(l)==True:
        count+=1
print(count)

按需分割即可
这是一个关于字符串切片操作考察得比较深的一个题目
运用Python字符串的的切片特性
记住切片是“前开后闭”区间

posted @ 2021-04-10 16:28  Zeker62  阅读(53)  评论(0编辑  收藏  举报