找出作为给定字符串的子串的最长奇数回文的长度 - Python

时间:2018-03-15 18:40:10

标签: python-3.x algorithm

我不知道如何将我的代码更改为仅查找奇数大小的回文。例如,

  • In:“divider”
  • 出:5
  • In:“Anna”
  • 出:2(应该是1)

虽然安娜是一个回文,但它的长度是均匀的。作为该字符串的子串的唯一奇数长度的回文是长度为1(a或n)的字符串。 任何帮助表示赞赏。

    entered = input()

    count = []
    for j in range(len(entered)):
        for i in range(j, len(entered)):
            if entered[j:i+1] == entered[i:j-1:-1]:
                count.append(i+1-j)

    print(max(count))

1 个答案:

答案 0 :(得分:0)

entered = input()
count = []
for j in range(len(entered)):
  for i in range(j, len(entered)):
    if entered[j:i+1] == entered[i:j-1:-1]:
      if(i+1-j)%2!=0:
        count.append(i+1-j)
print(max(count))