Задание №4362.
Измерение количества информации. ЕГЭ по информатике
Сколько существует восьмеричных пятизначных чисел, не содержащих в своей записи цифру 1, в которых все цифры различны и никакие две чётные или две нечётные цифры не стоят рядом?
Пояснение:
Посчитаем количество восьмеричных пятизначных чисел, соответствующих условиям задания, написав программу на языке программирования Python.
from itertools import product
collection = product('01234567', repeat=5) # создаем коллекцию картежей, состоящую из 85 = 32 768 элементов — всех возможных комбинаций символов из первого аргумента с размером 5 (в первом аргументе перечислены все цифры восьмеричной системы счисления, во втором — размер одного картежа)
count_numbers = 0
for number in collection: number = ''.join(number) # переводим картеж в строку if '1' not in number and number[0] != '0' and len(set(number)) == len(number) and all(int(number[i]) % 2 != int(number[i+1]) % 2 for i in range(len(number)-1)): count_numbers += 1
print(count_numbers) |
Прокомментируем некоторые проверяемые условия:
1)
number[0] != '0' — проверяем, что первая цифра числа не равна нулю, так как в этом случае число не является пятизначным.
2)
len(set(number)) == len(number) — метод set() оставляет только уникальные элементы из массива, который ему передается. Поэтому данное тождество будет истинным только в том случае, если все цифры пятизначного числа — разные.
3)
all(int(number[i]) % 2 != int(number[i+1]) % 2 for i in range(len(number)-1)) — метод all() вернет истину только в том случае, если все элементы массива будут истинными. Следовательно, в нашем случае если остаток от деления на 2 у всех рядом стоящих цифр в числе будет разный (то есть в числе не будет двух четных или нечетных рядом стоящих цифр), то метод вернет истину.
Таким образом, существует
180 восьмеричных пятизначных чисел, не содержащих в своей записи цифру 1, в которых все цифры различны и никакие две чётные или две нечётные цифры не стоят рядом.
Показать ответ
180
Источник: ФИПИ. Открытый банк тестовых заданий
Сообщить об ошибке
Тест с похожими заданиями