Автор | Сообщение |
|
Отправлено: 20.11.21 23:16. Заголовок: задание 12 № 288
У меня почему-то получилось 8 a=set() for i in range(1,3150): s = i*'8' while "555" in s or "888" in s: if "555" in s: s = s.replace( "555", "8", 1 ) else: s = s.replace( "888", "55", 1 ) a.add(s) print(s) print(a) print(len(a)) {'8', '858', '8588', '5588', '85', '558', '55', '88'} 8
|
|
|
Ответов - 3
[только новые]
|
|
|
Отправлено: 20.11.21 23:19. Заголовок: Тоже нашла ответ, но..
Тоже нашла ответ, но он не убедил.
|
|
|
|
Отправлено: 20.11.21 23:23. Заголовок: Посмотрела новую ред..
Посмотрела новую редакцию, теперь все корректно.
|
|
|
|
Отправлено: 24.11.21 13:08. Заголовок: 288. ПОКА нашлось (..
288. ПОКА нашлось (555) ИЛИ нашлось (888) заменить (555, 8) заменить (888, 55) КОНЕЦ ПОКА Известно, что начальная строка состоит только из цифр 8. Сколько различных строк может получиться в результате работы алгоритма? Если пробегать в данном диапазоне: то алгоритм ни разу не сработает при i=1 и i=2. Отсюда лишнее значение. Начинать нужно с i=3. Я сделал такую же ошибку первый раз. В новой формулировке уже написано не менее 2 цифр 8. В принципе было достаточно старой формулировки)
|
|
|
|