Найти тему

Разбор номера 39241 ЕГЭ по информатике #12

Оглавление

Условие: Тип 12 № 39241
Статья подготовлена командой itpy
Полный разбор задачи в Notion

Дана программа для редактора:

ПОКА нашлось (111) ИЛИ нашлось (222)
заменить (111, 22)
заменить (222, 1)
КОНЕЦ ПОКА

Известно, что исходная строка содержала больше 200 единиц и не содержала других цифр, а после выполнения программы получилась строка, содержащая только двойки. Какое наименьшее количество единиц могло быть в исходной строке?

Решение через Python и комментарии к нему:

-2

Комментарии к коду решения:

  1. for n in range(201, 1000): - Просто пробегаем числа большие 200.
  2. s = '1' * n - Создание строки, состоящей из n символов '1'.
  3. while '111' in s or '222' in s: - Запускаем цикл, пока в строке есть подстроки '111' или '222'.
  4. s = s.replace('111', '22', 1) - Заменяем первую найденную подстроку '111' на '22'.
  5. s = s.replace('222', '1', 1) - Заменяем первую найденную подстроку '222' на '1'.
  6. if len(s) == s.count('2'): - Проверка: если длина строки равна количеству символов '2' (строка содержащая только двойки).
  7. print(n) - Выводим найденное числа n (кол-во единиц в исходной строке).
  8. break - Прерываем выполнения цикла.

Ответ: 206

Читайте нас в телеграмме:

Информатика ЕГЭ | itpy 👨‍💻

Присоединяйся к нашему Телеграм каналу: t.me/informatika_kege_itpy
Присоединяйся к нашему Телеграм каналу: t.me/informatika_kege_itpy