Задача к ЕГЭ по информатике на тему «подсчет количества слов/чисел» №2

Определите количество восьмизначных чисел, записанных в пятиричной системе счисления, которые не оканчиваются на цифры, меньшие или равные 2, а также содержат поровну четных и нечетных цифр.

В ответе укажите одно число — количество найденных чисел.

Решение через циклы

a = ’01234’

count = set()

for x1 in ’1234’:
    for x2 in a:
        for x3 in a:
            for x4 in a:
                for x5 in a:
                    for x6 in a:
                        for x7 in a:
                            for x8 in ’34’:
                                s = x1+x2+x3+x4+x5+x6+x7+x8
                                # проверка, что чётных цифр и нечётных поровну
                                if len([i for i in s if int(i) % 2 == 0]) == len([i for i in s if int(i) % 2 != 0]):
                                    count.add(s)
print(len(count))

Решение через itertools

import itertools
k = 0
for x in itertools.product(’01234’, repeat = 8):
    s=’’.join(x)
    if s[0] != ’0’ and int(s[7]) > 2:
        count = 0
        for a in s:
            if int(a) % 2 == 0:
                count += 1
        if count == 4:
            k += 1
print(k)

Ответ: 31320
Оцените статью
Я решу все!