回文數索引python

2021-09-25 07:10:29 字數 852 閱讀 6299

給定乙個僅由小寫字母組成的字串。現在請找出乙個位置,刪掉那個字母之後,字串變成回文。請放心總會有乙個合法的解。如果給定的字串已經是乙個回文串,那麼輸出-1。

import sys

n=int(sys.stdin.readline().strip())

slist=

for i in range(n):

if n==0:

print none

def delete(s):

if s==s[::-1]:

return -1

for i in range(len(s)):

if i改進 左右相同可以同時減, 減到不同判斷左右哪乙個不是就行

import sys

n=int(sys.stdin.readline().strip())

slist=

for i in range(n):

if n==0:

print none

def delete(s):

if s==s[::-1]:

return -1

l=0r=len(s)-1

while(lif(s[l]==s[r]):

l += 1

r -= 1

else:

news1=s[l+1:r+1]

news2=s[l:r]

if news1==news1[::-1]:

return l

else:

return r

res=map(delete,slist)

for m in res:

print m

python生成回文數

python生成回文數 chyanog from itertools import product defpalindromenum n return n s tuple list i list i n n 1 2 n 1 1 1 for i in product range 1,10 range ...

python演算法 回文數

重點來了 不能將整數轉為字串 下面這個方法比較笨哈哈,但是也比較好理解吧 class solution def ispalindrome self,x int bool num1 x num2 0 num3 num1 if num1 0 如果輸入為負數,肯定不是回文數 return false if...

回文數索引(string類erase解題)

給定乙個僅由小寫字母組成的字串。現在請找出乙個位置,刪掉那個字母之後,字串變成回文。請放心總會有乙個合法的解。如果給定的字串已經是乙個回文串,那麼輸出 1。第一行包含t,測試資料的組數。後面跟有t行,每行包含乙個字串。如果可以刪去乙個字母使它變成回文串,則輸出任意乙個滿足條件的刪去字母的位置 下標從...