Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Тренировки Пробники Статистика Карточки Учебник Об экзамене Учительская
  • Тренажёр заданий ЕГЭ
  • Тренажёр ЕГЭ по Информатике
  • Список заданий №0
  • Задание №0
  • Задание №71969 ЕГЭ Информатике

    Условие задания #71969

    №0 по КИМ

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

    НАЧАЛО

                    ПОКА НЕ нашлось (00)

                            заменить (02, 101)

                            заменить (11, 2)

                            заменить (012, 30)

                            заменить (010, 00)

                    КОНЕЦ ПОКА

    КОНЕЦ

     

    Известно, что исходная строка A содержала ровно два нуля  — на первом и на последнем месте, 40 единиц, больше 40 двоек и не содержала других цифр.

    После выполнения данной программы получилась строка B, сумма цифр которой оказалась простым числом. Какое наименьшее количество двоек могло быть в строке A?

    Ответ

    Ответ:

    44

    Решение

    def Div(n):
        for i in range(2, int(n ** 0.5) + 1):
            if n % i == 0:
                return 0
        return n > 1
     
    def fn(u):
        A = '0' + u + '0'
        while '00' not in A:
            A = A.replace('02','101',1).replace('11','2',1).replace('012','30',1).replace('010','00',1)
        return 1 if Div(sum(map(int, list(A)))) else 0
     
    print(min([i for i in range(41,100) if fn('1' * 40 + '2' * i)]))

    Понятно ли решение?

    Похожие задания

    15
    Задание №71953Задание №71952Задание №20415Задание №71951Задание №20414Задание №20416Задание №31793Задание №20408Задание №38017Задание №71950Задание №21583Задание №75926Задание №75924Задание №75922Задание №75919
    Бесплатно

    Решай задачи ЕГЭ в приложении

    Скачивай наш Тренажер ЕГЭ на iPhone или Android и тренируйся в любое время и в любом месте!

    Саша — ассистент в телеграмме