Форум » Выполнение и анализ алгоритмов для исполнителей » задание 12 задача 291 » Ответить

задание 12 задача 291

flo23: Задача звучит так: Дана программа для Редактора: ПОКА нашлось (5555) заменить (5555, 88) заменить (888, 5) КОНЕЦ ПОКА Известно, что начальная строка состоит более чем из 400 цифр 5 и не содержит других цифр. При какой наименьшей длине исходной строки результат работы этой программы будет содержать наименьшее возможное число цифр 5? В ответе 403, но по коду программы for i in range(401, 1000): s = '5'*i while '5555' in s: s = s.replace('5555', '88', 1) s = s.replace('888', '5', 1) print(i, s.count('5')) получается ответ 405...В чем ошибка у меня?

Ответов - 3

Поляков: Спасибо за замечание, в условии задачи 12.291 была опечатка. Сейчас она исправлена. Ответ 403.

Ольга_Т: [pre2] for i in range(401, 410): s = '5' * i while '5555' in s: s = s.replace('5555', '88', 1) s = s.replace('888', '5', 1) print(i, s) [/pre2] в ответе 403 (но при этом строка на выходе 555, а при ответе 404 строка на выходе 88 - и здесь наименьшее число 5), так почему 403?

Поляков: Ольга_Т пишет: s = s.replace('5555', '88', 1) s = s.replace('888', '5', 1) Согласно исправленному условию должно быть так[pre2] s = s.replace('5555', '8', 1) s = s.replace('88', '5', 1)[/pre2]




полная версия страницы