Все 5-буквенные слова, составленные из букв П,Ю,Р,Е, записаны в алфавитном порядке. Вот начало списка:
1. ЕЕЕЕЕ
2. ЕЕЕЕП
3. ЕЕЕЕР
4. ЕЕЕЕЮ
5. ЕЕЕПЕ
…..
Под каким номером в списке идёт первое слово, которое начинается с ЮР?
Решение руками:
Заменим буквы на цифры: Е — 0, П — 1, Р — 2, Ю — 3.
Теперь запишем 5-буквенные слова в новом алфавите.
1. 00000
2. 00001
3. 00002
4. 00003
5. 00010
…..
Полученный ряд — числа в четверичной системе счисления, записанные по возрастанию.
Первое слово, которое начинается на ЮР – это ЮРЕЕЕ, тогда в четверичной системе это слово выглядит так — .
Переводим в десятичную систему счисления: .
Но поскольку номер в списке на единицу больше самого числа, то остается добавить к получившемуся числу единицу. Получаем число 897.
Решение Python:
from itertools import *
c = 0
for i in product(’ЕПРЮ’, repeat = 5):
s = ’’.join(i)
c += 1
if (s[0] + s[1]) == ’ЮР’:
print(c)
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[0] + s[1]) == ’ЮР’:
print(c)