Задание 8. Информатика. ЕГЭ. Поляков-7168

Просмотры: 201
Изменено: 25 ноября 2024

(М. Ишимов) Сколько существует десятичных пятизначных чисел, содержащих в своей записи ровно одну цифру \(2\), при этом рядом с этой цифрой могут стоять только нечётные цифры?

Решение:

\(5 \cdot 9^3 + 5^2 \cdot 9^2 + 2 \cdot 5^2 \cdot 8 \cdot 9 + 5 \cdot 8 \cdot 9^2\)

Python


from itertools import product

alph = '0123456789'

def valid(s):
    odd_num = '13579'
    if s.count('2') != 1:
        return False
    pos = s.find('2')
    if pos == 0:
        return s[1] in odd_num
    elif pos == 4:
        return s[3] in odd_num
    else:
        return all(s[i] in odd_num for i in [pos-1, pos+1])

q = 0
for p in product(alph, repeat=5):
    if p[0] == '0':
        continue
    q += int(valid(''.join(p)))
print(q)

Ответ: \(12510\)