ЕГЭ · ЗАДАНИЕ 8
Комбинаторика · №20218
Из букв Г, Е, И, Н, Р, С, Я составлены все слова длины 6, с повторениями. Слова отсортированы по алфавиту и пронумерованы с 1.
Найди номер последнего слова, содержащего подряд ГИРЯ.
Источник задания
Сначала попробуй решить самостоятельно, затем открой разбор. Для автоматической проверки ответа включи JavaScript.
Показать ответ
Ответ и пояснение
Ответ: 115381
Перебираем записи в алфавитном порядке. Для слов нумерация начинается с 1, для чисел запрещаем ноль в начале. Проверяем все ограничения одновременно. Сохраняем последний подходящий номер или увеличиваем счётчик, как требует вопрос.
from itertools import product
answer = 0
for i, letters in enumerate(product("ГЕИНРСЯ", repeat=6), 1):
w = "".join(letters)
if "ГИРЯ" in w:
answer = i
print(answer)