Задания
Версия для печати и копирования в MS Word
Тип 14 № 76682
i

В си­сте­ме счис­ле­ния с ос­но­ва­ни­ем p вы­пол­ня­ет­ся ра­вен­ство zx + xy  =  zyA.

Бук­ва­ми x, y, и z обо­зна­че­ны не­ко­то­рые цифры из ал­фа­ви­та си­сте­мы счис­ле­ния с ос­но­ва­ни­ем p. Опре­де­ли­те зна­че­ние числа xyzp и за­пи­ши­те это зна­че­ние в де­ся­тич­ной си­сте­ме счис­ле­ния.

Спрятать решение

Ре­ше­ние.

При­ведём ре­ше­ние на языке Python.

alphabet = sorted('1234567890QWERTYUIOPASDFGHJKLZXCVBNM')

for p in range(11, 36+1):

for x in alphabet[1:p]:

for y in alphabet[:p]:

for z in alphabet[1:p]:

if int(z+x, p) + int(x+y, p) == int(z+y+'A', p):

print(int(x+y+z, p))

Ответ: 1211.

 

При­ведём ре­ше­ние Та­тья­ны Юр­чен­ко на языке Python.

for p in range(11,100): # так как в числе есть цифра А

for x in range(0,p):

for y in range (0,p):

if x == y: continue # раз­ные пе­ре­мен­ные не могут быть оди­на­ко­вой циф­рой

for z in range (1,p): # от 1, так как цифра все­гда на 1 месте в числе и не может быть 0

if z == y: continue #раз­ные пе­ре­мен­ные не могут быть оди­на­ко­вой циф­рой

a = z*p + x

b = x*p + y

c = z*p**2 + y*p + 10

if (a+b)==c:

print(x*p**2 + y*p + z)

exit()