Files
tira/viikko4/chars.py
T
2023-11-07 01:27:43 +02:00

45 lines
1.1 KiB
Python

def solve(s):
print()
list = s
print(list)
i = 0
while i < len(s) - 1 >= 1:
if i > len(list) - 1:
i = 0
# lol memory error jos ei
if i < 0:
i = 0
# 1. kaksi merkkiä yhtäsuuria peräkkäin
if list[i] == list[i + 1]:
if ord(s[i]) == 122:
int_to_char = 96
else:
int_to_char = ord(s[i])
# 3. poista kaksi, lisää yksi, yhtä suurempi
list = s[0:i] + chr(int_to_char + 1) + s[(i + 2) :]
s = list
i -= 1
# 2. jos ei, lopeta, i menee yli len(s)-1
else:
i += 1
return s
if __name__ == "__main__":
print(solve("auto")) # auto
print(solve("ddqqirr")) # eris
print(solve("aaaaaa")) # cb
print(solve("wsstuva")) # xa
print(solve("zzzzzzzz")) # c
print(solve("mlkjihgfedcbb")) # n
print(solve("kkkjjiikjkjiikjjiijkjji")) # mjkjmlki
print(solve("zaaazzzaaz")) # zczbz
s = "a" * 10**5
print(solve(s))
print(solve("aaabbbbb"))