Задача #3660
Системы счисления
(Лысенков О.) Значение выражения
записали в системе счисления с основанием 4. Сколько цифр 1 в этой записи?
Войдите, чтобы история ответов и статистика сохранялись.
Решение
Ответ
11157
a = (16 ** 350 * ((15 * 3 - 29) ** (4 ** (2 + 5))) + 1007) // 63 #обычное деление / преобразует число в float (число
#с плавающей точкой), но получившееся число превышает максимальный лимит для типа float, из-за этого код
#выдаёт ошибку OverflowError, чтобы избежать этого, а также не иметь проблем с точностью
#делим нацело с помощью //
s = ''
while a != 0:
s = str(a % 4) + s
a //= 4
print(s.count('1'))