Все 4-буквенные слова, составленные из букв Д, Е, К, О, Р, записаны в алфавитном порядке и пронумерованы, начиная
1. ДДДД
2. ДДДЕ
3. ДДДК
4. ДДДО
5. ДДДР
6. ДДЕД
...
Под каким номером в списке идёт первое слово, которое начинается с
Заменим буквы Д, Е, К, О, Р на 0, 1, 2, 3, 4 соответственно (для них порядок очевиден — по возрастанию).
Выпишем начало списка, заменив буквы на цифры:
1. 0000
2. 0001
3. 0002
4. 0003
5. 0004
6. 0010
...
Полученная запись есть числа, записанные в пятеричной системе счисления в порядке возрастания. Первое слово, начинающееся
Не забудем о том, что есть слово
Ответ: 251.
Приведём другое решение на языке Python.
a = {0: "Д", 1: "Е", 2: "К", 3: "О", 4: "Р"}
k = 0
for i in range(0, len(a)):
for j in range(0, len(a)):
for g in range(0, len(a)):
for m in range(0, len(a)):
k += 1
if a[i] == 'К':
print(k) # Возьмём первое число, которое выдаст программа
break
Приведём решение Ивана Новикова на языке Python.
from itertools import *
cnt = 0
for i in product('ДЕКОР' , repeat=4):
cnt +=1
if i[0] == 'К':
break
print(cnt)
Приведём решение Юрия Красильникова на языке Python.
from itertools import product
print(sorted([''.join(p) for p in product('ДЕКОР', repeat=4)]).index('КДДД')+1))
Приведём решение Сергея Донец на языке PascalABC.NET.
begin
('ДЕКОР'.Sorted.Cartesian(4)
.Select(s -> s.JoinToString)
.ToArray
.FindIndex(s -> s[1] = 'К') + 1).Print;//251
end.

