Сколько существует различных трёхзначных чисел, записанных в шестиричной системе счисления, в записи которых цифры следуют слева направо в невозрастающем порядке?
Приведём решение на языке Python.
from itertools import product
alphabet = '012345'
ap=[]
for i in product(alphabet, repeat=3):
if i[0] != '0' and int(i[0]) >= int(i[1]) >= int(i[2]):
ap.append(i)
print(len(ap))
Ответ: 55.
Приведём другое решение на языке Python.
n = 0
for i in range(1,6):
for j in range(0,6):
for k in range(0,6):
if i >= j and j >= k:
n=n+1
print(n)
Приведём решение Александра Козлова на языке Python.
k = 0
for i in range(5*6**2+5*6+5+1):
s = ''
x = i
while x:
s = str(x%6) + s
x = x//6
if len(s) == 3 and s[0] >= s[1] >= s[2]:
k+=1
print(k)
Приведём решение Юрия Красильникова на языке Python.
def quantity(previous,length):
if length==2:
return previous+1
return sum([quantity(x,length-1) for x in range(previous+1)])
print(sum([quantity(x,3) for x in range(1,6)]))

