Top.Mail.Ru
Ответы

Задание на python. Шифрованные инструкции

Передаётся строка типа
5[ab]6[ti]cc
расшифровывается как
abababababtitititititicc
скобки могут быть вложенными

По дате
По рейтингу
Аватар пользователя
Новичок
123456789101112131415161718192021222324
 def decode_string(s): 
    stack = [] 
    current_num = 0 
    current_str = "" 
 
    for char in s: 
        if char.isdigit(): 
            current_num = current_num * 10 + int(char) 
        elif char == '[': 
            stack.append((current_num, current_str)) 
            current_num = 0 
            current_str = "" 
        elif char == ']': 
            prev_num, prev_str = stack.pop() 
            current_str = prev_str + current_str * prev_num 
        else: 
            current_str += char 
 
    return current_str 
 
encoded_str = "5[ab]6[2[ti]c]cc" 
decoded_str = decode_string(encoded_str) 
print(decoded_str)