-2
通過使用python編程從給定的數字字符串中改變最多K位數來製作最大的迴文。通過使用python從給定數字字符串改變最多K位數來製作最大回文數?
通過使用python編程從給定的數字字符串中改變最多K位數來製作最大的迴文。通過使用python從給定數字字符串改變最多K位數來製作最大回文數?
!在/ usr/bin中/ Python的
def max(a,b):
if a >b :
return a
else:
return b
def palindrome(str,k1):
l=0
r=len(str)-1
pl=str
k=int(k1)
while (l < r):
if str[l] != str[r] :
pl[l]=pl[r]=max(str[l],str[r])
l+=1
r-=1
if k<= 0:
return "can not able to make palin "
l=0
r=len(str)-1
while l<= r:
if l == r:
if k>0:
pl[l]='9'
if pl[l] < '9':
if k>=2 and str[l]==pl[l] and str[r]==pl[r]:
k-=2
pl[l]=pl[r]='9'
elif k>=1 and (str[l]!=pl[l] or str[r]!=pl[r]):
k-=1
pl[l]=pl[r]='9'
l+=1
r-=1
return pl
print "Your output "+ str("".join(palindrome(list("45611"),1)))
我用列表,而不是字符串,這樣我們就可以操作使用索引並加入排行榜,以便讓出作爲字符串
「」。加入(迴文(列表(「45611」),1))