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

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

    №0 по КИМ

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

    НАЧАЛО

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

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

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

          заменить (12, 21)

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

       КОНЕЦ ПОКА

    КОНЕЦ

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

    Ответ

    Ответ:

    104

    Решение

    def prime(x):
        if x == 1:
            return False
        for j in range(2, x//2 + 1):
            if x % j == 0:
                return False
        return True
     
    for n in range(100, 200):
        s = '0' + '1' * n + '2' * n + '0'
        while '00' not in s:
            s = s.replace('02', '101', 1)
            s = s.replace('11', '2', 1)
            s = s.replace('12', '21', 1)
            s = s.replace('010', '00', 1)
        summa = sum([int(x) for x in s if x.isdigit()])
        if prime(summa):
            print(n)
            exit()

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

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

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

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

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

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