Дана программа для Редактора:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
НАЧАЛО ПОКА нашлось (>1) ИЛИ нашлось (>2) ИЛИ нашлось (>0) ЕСЛИ нашлось (>1) ТО заменить (>1, 22>) КОНЕЦ ЕСЛИ ЕСЛИ нашлось (>2) ТО заменить (>2, 2>) КОНЕЦ ЕСЛИ ЕСЛИ нашлось (>0) ТО заменить (>0, 1>) КОНЕЦ ЕСЛИ КОНЕЦ ПОКА КОНЕЦ |
На вход приведённой выше программе поступает строка, начинающаяся с символа «>», а затем содержащая 39 цифр «0», n цифр «1» и 39 цифр «2», расположенных в произвольном порядке.
Определите наименьшее значение n, при котором сумма числовых значений цифр строки, получившейся в результате выполнения программы, является простым числом.
Ответ:
Демонстрационный вариант ЕГЭ 2023 г. – задание №12
Решение:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
def prosto(x): for i in range(2, int(x**0.5)+1): if x%i==0: return False return True def sm(s): t = 0 for i in range(0, len(s)): if s[i]!='>': t = t + int(s[i]) return t for n in range(1, 1000): s = '>' + 39*'0'+n*'1'+39*'2' while '>1' in s or '>2' in s or '>0' in s: if '>1' in s: s = s.replace('>1', '22>', 1) if '>2' in s: s = s.replace('>2', '2>', 1) if '>0' in s: s = s.replace('>0', '1>', 1) if prosto(sm(s)): print(n) break |
Ответ: 5