Перебор без ошибок · тема 3 из 8
Слова с повторениями
Комбинаторика · ЕГЭ 8
Одна идея — один пример
product(alphabet, repeat=n) строит все слова длины n с повторениями. permutations без повторений решает другую задачу.
from itertools import product
print(len(list(product("АБ", repeat=3))))
Теперь решаем самостоятельно
До запуска оцени размер: k**n. Сначала проверь фильтр на маленьком алфавите и коротких словах.
Вводится n (1 ≤ n ≤ 7). Найди число слов длины n из А, Б, В, в которых ровно одна А.
Пример входных данных и результата
Ввод:
1
Вывод:
1
Черновик и файл программы
Черновик сохраняется в этом браузере. Ctrl/⌘ + S — сохранить.
Результаты проверки
Напиши решение и нажми «Проверить код». Данные каждого теста подаются автоматически.
Нужна подсказка?
Кортеж тоже поддерживает count. Независимая проверка: n * 2**(n-1).
На чём легко ошибиться
Не подставляй латинскую A вместо кириллической А.
Разобрать один из способов решения
Сначала попробуй написать код сам. Сравни алгоритм, затем закрой разбор и воспроизведи решение без подсказки.
from itertools import product
n = int(input())
print(sum(word.count("А") == 1 for word in product("АБВ", repeat=n)))Тесты проверяют результат на учебных примерах, но не доказывают правильность для любого входа. Объясни каждую строку и предложи собственный тест.
Перед следующей темой
Назови входные данные, результат, основной шаг алгоритма и граничный случай. Если использовал разбор, напиши решение заново. Для свободных экспериментов открой Python онлайн.
Все темы этого курса
Программа подготовлена по темам банка «Академии С». Официальные документы: ФИПИ. Справочник языка: Python. Не все экзаменационные задачи нужно решать программой: например, работа в таблицах требует освоения табличного редактора.