ciag = input()
ciag.split()
sekundy = int()
done = bool()
ilosc_a = int()
ilosc_b = int()
array_A = []
array_B = []
array_AB = []
for i in ciag:
if i == "a":
array_A.append(i)
ilosc_a += 1
elif i == "b":
array_B.append(i)
ilosc_b += 1
array_AB.append(i)
wskaznik_lewy = int()
wskaznik_prawy = int(len(array_AB) - 1)
dynamiczny_wskaznik_prawy = wskaznik_prawy
srodek = int((len(array_AB) - 1)/2)
if len(ciag) % 2 == 0:
if ilosc_a % 2 == 0 and ilosc_b % 2 == 0:
while wskaznik_lewy < len(array_AB)/2:
if array_AB[wskaznik_lewy] != array_AB[dynamiczny_wskaznik_prawy]:
dynamiczny_wskaznik_prawy -= 1
elif array_AB[wskaznik_lewy] == array_AB[dynamiczny_wskaznik_prawy]:
sekundy += (wskaznik_prawy - dynamiczny_wskaznik_prawy)
temp = array_AB[wskaznik_prawy]
array_AB[wskaznik_prawy] = array_AB[dynamiczny_wskaznik_prawy]
array_AB[dynamiczny_wskaznik_prawy] = temp
temp = 0
wskaznik_lewy += 1
wskaznik_prawy -= 1
dynamiczny_wskaznik_prawy = wskaznik_prawy
else:
sekundy = -1
elif len(ciag) % 2 == 1:
while wskaznik_lewy < srodek:
if array_AB[wskaznik_lewy] != array_AB[dynamiczny_wskaznik_prawy]:
dynamiczny_wskaznik_prawy -= 1
if array_AB[wskaznik_lewy] == array_AB[dynamiczny_wskaznik_prawy]:
if dynamiczny_wskaznik_prawy >= srodek:
sekundy += (wskaznik_prawy - dynamiczny_wskaznik_prawy)
temp = array_AB[wskaznik_prawy]
array_AB[wskaznik_prawy] = array_AB[dynamiczny_wskaznik_prawy]
array_AB[dynamiczny_wskaznik_prawy] = temp
temp = 0
wskaznik_lewy += 1
wskaznik_prawy -= 1
dynamiczny_wskaznik_prawy = wskaznik_prawy
if dynamiczny_wskaznik_prawy < srodek:
sekundy += (srodek - dynamiczny_wskaznik_prawy)
temp = array_AB[dynamiczny_wskaznik_prawy]
array_AB[dynamiczny_wskaznik_prawy] = array_AB[srodek]
array_AB[srodek] = temp
temp = 0
dynamiczny_wskaznik_prawy = wskaznik_prawy
print(sekundy)
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | ciag = input() ciag.split() sekundy = int() done = bool() ilosc_a = int() ilosc_b = int() array_A = [] array_B = [] array_AB = [] for i in ciag: if i == "a": array_A.append(i) ilosc_a += 1 elif i == "b": array_B.append(i) ilosc_b += 1 array_AB.append(i) wskaznik_lewy = int() wskaznik_prawy = int(len(array_AB) - 1) dynamiczny_wskaznik_prawy = wskaznik_prawy srodek = int((len(array_AB) - 1)/2) if len(ciag) % 2 == 0: if ilosc_a % 2 == 0 and ilosc_b % 2 == 0: while wskaznik_lewy < len(array_AB)/2: if array_AB[wskaznik_lewy] != array_AB[dynamiczny_wskaznik_prawy]: dynamiczny_wskaznik_prawy -= 1 elif array_AB[wskaznik_lewy] == array_AB[dynamiczny_wskaznik_prawy]: sekundy += (wskaznik_prawy - dynamiczny_wskaznik_prawy) temp = array_AB[wskaznik_prawy] array_AB[wskaznik_prawy] = array_AB[dynamiczny_wskaznik_prawy] array_AB[dynamiczny_wskaznik_prawy] = temp temp = 0 wskaznik_lewy += 1 wskaznik_prawy -= 1 dynamiczny_wskaznik_prawy = wskaznik_prawy else: sekundy = -1 elif len(ciag) % 2 == 1: while wskaznik_lewy < srodek: if array_AB[wskaznik_lewy] != array_AB[dynamiczny_wskaznik_prawy]: dynamiczny_wskaznik_prawy -= 1 if array_AB[wskaznik_lewy] == array_AB[dynamiczny_wskaznik_prawy]: if dynamiczny_wskaznik_prawy >= srodek: sekundy += (wskaznik_prawy - dynamiczny_wskaznik_prawy) temp = array_AB[wskaznik_prawy] array_AB[wskaznik_prawy] = array_AB[dynamiczny_wskaznik_prawy] array_AB[dynamiczny_wskaznik_prawy] = temp temp = 0 wskaznik_lewy += 1 wskaznik_prawy -= 1 dynamiczny_wskaznik_prawy = wskaznik_prawy if dynamiczny_wskaznik_prawy < srodek: sekundy += (srodek - dynamiczny_wskaznik_prawy) temp = array_AB[dynamiczny_wskaznik_prawy] array_AB[dynamiczny_wskaznik_prawy] = array_AB[srodek] array_AB[srodek] = temp temp = 0 dynamiczny_wskaznik_prawy = wskaznik_prawy print(sekundy) |
English