как нашел? написал программу на питоне которая перебирает все х до 10000000 но дальше 502 он не нашел ни единого. далее идет код на питоне можешь посмотреть.
for x in range(10000000):
a = x
L = 1
M = 0
while x > 0:
M = M + 1
if x %2 == 0:
L = L * (x % 8)
x = x // 8
if L==36 and M==3:
print(a)
print(L)
print(M)
print()
А да еще объяснение задачи: тебе дали программу или функцию можно называть как хочешь которая при вводе х выдает два числа L и M. И тебя спрашивают при каком самом большом вводе х функция выдаст 36 и 3. Решить задачу можно двумя способами первое математически понять как работает функция и составить обратный алгоритм. Но функция составлена так что выдает кализии (что означает если ты введешь две разные значения ответ выдаст одинаковый). Из за этого пришлось решить задачу вторым способом методом перебора. И программа выдала что наибольшее значение это 502
Answers & Comments
ответ: 502
как нашел? написал программу на питоне которая перебирает все х до 10000000 но дальше 502 он не нашел ни единого. далее идет код на питоне можешь посмотреть.
for x in range(10000000):
a = x
L = 1
M = 0
while x > 0:
M = M + 1
if x %2 == 0:
L = L * (x % 8)
x = x // 8
if L==36 and M==3:
print(a)
print(L)
print(M)
print()
А да еще объяснение задачи: тебе дали программу или функцию можно называть как хочешь которая при вводе х выдает два числа L и M. И тебя спрашивают при каком самом большом вводе х функция выдаст 36 и 3. Решить задачу можно двумя способами первое математически понять как работает функция и составить обратный алгоритм. Но функция составлена так что выдает кализии (что означает если ты введешь две разные значения ответ выдаст одинаковый). Из за этого пришлось решить задачу вторым способом методом перебора. И программа выдала что наибольшее значение это 502