Форум » Системы счисления » Задание 14, № 312 » Ответить

Задание 14, № 312

lena: 7^500+7^200-7^50-x, x -положительное в семеричной системе счисления 7^500+7^200-7^50=10..06..60..0 Чтобы была максимальная сумма разрядов необходимо максимизировать количество шестерок, поэтому 10..06..60..0 - x получим: 6...656...6 "6" - 499, "5" -1 Сумма цифр:6*499+5=2999 В ответе 3000, но все 500 шестерок не получаются, т.к. при вычитании придется "занять" из старшего разряда. В чем я ошибаюсь?

Ответов - 7

EugeneJobs: При вычитании мы можем получить ЛЮБОЕ число, меньше уменьшаемого. 6666...666 (500 разрядов) < 10...066.660..0 (501 разряд)

lena: Спасибо, поняла

dim18: Здравствуйте. У меня максимальная сумма разрядов получается 1200. Подскажите, пож., в чем ошибка. [pre2] import numpy as np a = [] for x in range(1000): if int(np.base_repr(7 ** 500 + 7 ** 200 - 7 ** 50 - x, 7)) > 0: a.append(np.base_repr(7 ** 500 + 7 ** 200 - 7 ** 50 - x, 7)) b = [] for i in a: b.append(sum(map(int, i))) print(max(b)) # ответ 1200(3000) [/pre2]


Поляков: dim18 пишет: У меня максимальная сумма разрядов получается 1200. Подскажите, пож., в чем ошибка. Почему вы решили, что X меньше 1000?

dim18: Я пробовал увеличивать диапазон, результат не меняется.

Поляков: Эта задача не решается лобовым перебором.

dim18: Спасибо!



полная версия страницы