Задание №8 — Комбинаторика
#69634Задание №8ФИПИ
Количество информации
Все шестибуквенные слова, составленные из букв Р, Е, П, Л, И, К, А, записаны в алфавитном порядке и пронумерованы.
1. АААААА
2. АААААЕ
3. АААААИ
4. АААААК
5. АААААЛ
6. АААААП
7. АААААР
...
Определите в этом списке количество слов с чётными номерами, которые не начинаются с буквы К и при этом содержат в своей записи не менее двух букв И.
Правильный ответ
10892
Пояснение
Решение:
Букв семь, в алфавитном порядке: А, Е, И, К, Л, П, Р. Слово с номером — это число в семеричной системе счисления (А=0, Е=1, И=2, К=3, Л=4, П=5, Р=6).
Так как основание 7 нечётно, чётность зависит от суммы всех цифр, поэтому просто перебираем все слов и отбираем те, у которых номер чётный, первая буква не К, а букв И не менее двух.
from itertools import product
count = 0
for n, w in enumerate(product('АЕИКЛПР', repeat=6), 1):
s = ''.join(w)
if n % 2 == 0 and s[0] != 'К' and s.count('И') >= 2:
count += 1
print(count)
Программа выводит 10892.
Ответ: 10892