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) |