def is_palindrome(s1):
return s1==s1[::-1]
def zamien(slowo, i):
slowo = list(slowo)
slowo[i], slowo[i+1] = slowo[i+1], slowo[i]
slowo = ''.join(slowo)
return slowo
slowo = input()
ilosc = len(slowo)
def ciag(c, i=0, cnt=0):
#print(cnt, c)
global ilosc
if is_palindrome(c):
ilosc = min(cnt, ilosc)
return
if i==len(c)-1:
return
if c[i]!=c[i+1]:
ciag(zamien(c, i), i+1, cnt+1)
ciag(c, i+1, cnt)
ciag(slowo)
if ilosc==len(slowo):
print(-1)
else:
print(ilosc)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | def is_palindrome(s1): return s1==s1[::-1] def zamien(slowo, i): slowo = list(slowo) slowo[i], slowo[i+1] = slowo[i+1], slowo[i] slowo = ''.join(slowo) return slowo slowo = input() ilosc = len(slowo) def ciag(c, i=0, cnt=0): #print(cnt, c) global ilosc if is_palindrome(c): ilosc = min(cnt, ilosc) return if i==len(c)-1: return if c[i]!=c[i+1]: ciag(zamien(c, i), i+1, cnt+1) ciag(c, i+1, cnt) ciag(slowo) if ilosc==len(slowo): print(-1) else: print(ilosc) |
English