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

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

    №0 по КИМ

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

    НАЧАЛО

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

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

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

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

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

                    КОНЕЦ ПОКА

    КОНЕЦ

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

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

    Ответ

    Ответ:

    44

    Решение

    def prime(x):
        if x == 1:
            return False
        for j in range(2, x):
            if x % j == 0:
                return False
        return True
     
    for n in range(41, 100):
        s = '0' + '1' * 40 + '2' * n + '0'
        while '00' not in s:
            s = s.replace('02', '101', 1)
            s = s.replace('11', '2', 1)
            s = s.replace('012', '30', 1)
            s = s.replace('010', '00', 1)
        summa = sum([int(x) for x in s])
        if prime(summa):
            print(n)
            break

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

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

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

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

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

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