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

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

1. ААААА

2. ААААГ

3. ААААО

4. ААААР

5. АААГА

…..

Запишите слово, которое стоит под номером 222.

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

Заменим буквы на цифры: А — 0, Г — 1, О — 2, Р — 3.

Теперь запишем 5-буквенные слова в новом алфавите.

1. 00000

2. 00001

3. 00002

4. 00003

5. 00010

…..

Полученный ряд — числа в четверичной системе счисления, записанные по возрастанию. Так как порядковый номер слова всегда на единицу больше, чем само слово, то переведем 221 в четверичную систему счисления: 22110 = 31314  . Добавим в начало незначащий 0, так как слова 5-буквенные, получим 03131, остается только обратно заменить цифры на буквы.
Значит на 222 месте стоит слово АРГРГ.

Решение Python:

from itertools import *
c = 0
for i in product(’АГОР’, repeat = 5):
    s = ’’.join(i)
    c += 1
    if c == 222:
        print(s)

Решение 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 c == 222:
                        print(s)
                        break

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