mirror of
https://github.com/iritmaximus/tira.git
synced 2026-10-12 19:13:47 +03:00
45 lines
1.1 KiB
Python
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"))
|