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

Все 5-буквенные слова, составленные из букв Б,Л,Ю,Д,О, записаны в алфавитном порядке. Вот начало списка:

1. БББББ

2. ББББД

3. ББББЛ

4. ББББО

5. ББББЮ

6. БББДБ

…..

Под каким номером в списке идёт первое слово, в котором нет буквы Б?

Решение руками:

Присвоим буквам номера: Б — 0, Д — 1, Л — 2, О — 3, Ю — 4. Тогда первое 5-буквенное слово, в котором нет буквы Б — ДДДДД или же 111115  .

Переведём число 111115  в десятичную. 111115 = 78110  .

Поскольку номер в списке на единицу больше самого числа, то остается прибавить к числу 781 единицу. Получаем 782.

Решение Python:

from itertools import *
coun=0
num=0
for x in product(’БДЛОЮ’, repeat  = 5):
    s=’’.join(x)
    coun+=1
    if s.count(’Б’)==0:
        num=coun
        print(num)
        break

Решение Python:

alf = ’БДЛОЮ’
c = 0
for i in alf:
    for j in alf:
        for k in alf:
            for l in alf:
                for m in alf:
                    s = i + j + k + l + m
                    c += 1
                    if s.count(’Б’) == 0:
                        print(c)

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