Untitled
unknown
plain_text
a year ago
921 B
7
Indexable
def solution(number):
while True:
new_number = []
i = 0
changed = False
while i < len(number):
j = i
# Find the end of the run of identical digits
while j < len(number) and number[j] == number[i]:
j += 1
run_length = j - i
if run_length >= 2:
# Calculate the sum of the digits in the run
sum_digits = int(number[i]) * run_length
new_number.append(str(sum_digits))
changed = True
else:
# Single digit, append as is
new_number.append(number[i])
i = j
# Form the new string after replacements
new_number_str = ''.join(new_number)
if not changed:
# No changes made; the process is complete
break
number = new_number_str
return numberEditor is loading...
Leave a Comment