Определите количество 13-ричных семизначных чисел, в записи которых не менее двух цифр 5 и никакие две чётные и две нечётные цифры не стоят рядом. Решить через пайтон и билиотеку интертулс
Ответ нейросети
27 августа 2025 10:31
Ответ: 91581
Пояснение по задаче
- В base-13 цифры — это 0,1,2,...,12. Чётные цифры: 0,2,4,6,8,10,12. Нечётные: 1,3,5,7,9,11.
- Семизначное число вbase-13 не может начинаться с 0.
- Условие задачи: цифры чередуются по парности (никакие две чётные не стоят рядом и никакие две нечётные не стоят рядом). Значит, две возможные схемы чередования:
- E O E O E O E (первый цифра чётная, далее — чередование)
- O E O E O E O (первый цифра нечётная, далее — чередование)
- Условие "не менее двух цифр 5" означает, что цифра 5 встречается в позиции с нечётной чётности. В каждой схемe число позиций с нечётной чётностью равно m:
- Для схемы 1): m = 3 (поз. 2,4,6 — нечётные цифры)
- Для схемы 2): m = 4 (поз. 1,3,5,7 — нечётные цифры)
Подсчёт для одной схемы
- Для нечётных позиций (м позиций) цифры могут быть из множества {1,3,5,7,9,11} (6 вариантов на позицию).
Количество вариантов так, чтобы среди m позиций было как минимум 2 цифры равны 5:
- точно j позиций равны 5, где j = 2,3,...,m: C(m, j) * 5^{m-j} (потому что на позиции, где не 5, остаётся 5 вариантов не равных 5)
- суммируем по j от 2 до m. Результаты:
- для m = 3: 16 вариантов для размещения 5 среди нечётных позиций
- для m = 4: 171 вариантов для размещения 5 среди нечётных позиций
- Для чётных позиций:
- в схемe 1) чётные позиции — это 1,3,5,7: первые цифра не может быть 0, поэтому у первой чётной позиции 6 вариантов (2,4,6,8,10,12), у остальных трёх чётных позиций по 7 вариантов (0,2,4,6,8,10,12). Всего чётных позиций даёт 6 * 7^3 = 2058 вариантов.
- в схемe 2) первые цифры — нечётные, а чётные позиции 2,4,6: у каждой из трёх чётных позиций по 7 вариантов. Всего 7^3 = 343 вариантов.
- Итого:
- Схема 1: 16 (нечётные) × 6 × 7^3 = 16 × 2058 = 32928
- Схема 2: 171 (нечётные) × 7^3 = 171 × 343 = 58653
- Общее количество = 32928 + 58653 = 91581
Решение на Python с использованием itertools
- Ниже приведён пример кода, который считает ответ двумя способами: по двумя схемам, используя itertools.product для перебора возможных заполнений позиций.
Пример кода (Python, itertools):
- Способ 1: раздельный перебор по двух схемам from itertools import product
цифры по парности
even_first = [2, 4, 6, 8, 10, 12] # первая позиция в схеме 1 (E) even_all = [0, 2, 4, 6, 8, 10, 12] # для остальных чётных позиций odd_digits = [1, 3, 5, 7, 9, 11]
Схема 1: E O E O E O E
cnt1 = 0 for digits in product(even_first, odd_digits, even_all, odd_digits, even_all, odd_digits, even_all): if digits.count(5) >= 2: cnt1 += 1
Схема 2: O E O E O E O
cnt2 = 0 for digits in product(odd_digits, even_all, odd_digits, even_all, odd_digits, even_all, odd_digits): if digits.count(5) >= 2: cnt2 += 1
total = cnt1 + cnt2 print(total)
Выведет: 91581
Способ 2: проверка через формулы (опционально)
можно закодировать как подсчёт 16 и 171 для нечётных позиций и умножение на варианты чётных позиций,
как описано выше, но для задачи достаточно приведенного перебора.
Как использовать
- Установите Python (например, 3.x).
- Скопируйте код в файл, запустите. Он выведет 91581 — количество искомых 13-ричных семизначных чисел.
Кратко о логике
- Чередование парности даёт две схемы заполнения.
- Число 5 встречается только на нечётных позициях (т.к. 5 — нечётное число).
- Для m нечётных позиций: число вариантов так, чтобы встретилось 2 и более 5, равно sum_{j=2}^m C(m, j) · 5^{m-j}, что даёт 16 и 171 соответственно в двух схемах.
- Чётные позиции дают множители 6·7^3 для схемы 1 и 7^3 для схемы 2 (учитывая ограничение Leading digit ≠ 0).
Ответ: 91581. Если нужна, могу ещё привести отдельную версию кода с более явной комбинаторикой или расширить под другие bases и длины.
Понравился ответ?
Задай свой вопрос
Напиши любую задачу или вопрос, а нейросеть её решит



