Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача на питоне 28

Kirill Kirill Ученик (239), на голосовании 1 неделю назад
Исполнитель Шифратор преобразует исходную строку s, состоящую только из нулей, единиц и двоек, по следующему алгоритму:

сначала все последовательности 02 преобразуются в 22012;
затем все последовательности 01 преобразуются в 1102.
Напишите программу для определения количества символов в полученной строке, если к исходной строке s применить описанный алгоритм n раз.



Например, при исходной строке s = ‘01102’ и количестве повторений n = 2 будет получена строка ‘1122110221221122110222’ и выведен ответ 22.



В поле краткого ответа запишите длину строки, полученной при исходной строке s = ‘2011022’ и количестве повторений алгоритма n = 10.



В поле развёрнутого ответа напишите программу для решения задачи при любых вводимых с клавиатуры на разных строках s и n.
Голосование за лучший ответ
Татьяна Просветленный (34235) 1 месяц назад
Краткий ответ
Для исходной строки s = '2011022' и количества повторений n = 10, необходимо определить длину итоговой строки после 10 применений алгоритма.
Для этого воспользуемся следующей программой на Python:
 def transform_string(s, n): 
for _ in range(n):
s = s.replace('02', '22012')
s = s.replace('01', '1102')
return len(s)

s = '2011022'
n = 10

print(transform_string(s, n))
Развернутое решение
Теперь напишем программу, которая будет решать данную задачу для любых вводимых строк s и количества повторений n. Пользователь сможет ввести исходную строку и количество повторений, а программа вернет длину итоговой строки.
 def transform_string(s, n): 
for _ in range(n):
s = s.replace('02', '22012')
s = s.replace('01', '1102')
return len(s)

# Ввод данных
s = input("Введите исходную строку, состоящую только из нулей, единиц и двоек: ")
n = int(input("Введите количество повторений алгоритма: "))

# Вычисление и вывод результата
result_length = transform_string(s, n)
print("Длина полученной строки после", n, "повторений:", result_length)
Этот код позволит решить задачу для любых значений s и n. Пользователь просто вводит строку и количество повторений, и программа возвращает длину полученной строки после n повторений алгоритма.
Похожие вопросы