Значение арифметического выражения: 9^18 + 3^54 – 9 — записали в системе счисления с основанием 3. Сколько цифр «2» содержится в этой записи?
Asked
Active
Viewed 951 times
2
-
https://ru.stackoverflow.com/a/453060/178988 – Qwertiy Feb 18 '21 at 15:43
2 Answers
2
можно записать в виде
9^18 + 3^54 – 9 = 3^27 + 3^54 - 3^2 = 3^2 * (3^52 + 3^25 - 1)
т.е. это число
3^2 * (0t100000000000000000000000000100000000000000000000000000 - 1)
умножение на 3^2 даст сдвиг влево на 2 разряда, которые будут нулевыми
а вычитание 1 из 0 даст2
автор может сам вычесть эту единичку и подсчитать сколько получится двоек
P.S.
а если надо сделать на питоне, то вычисление соответствующего разряда - это итерационное выполнение следующей команды
digit = value % 3
value //= 3
Zhihar
- 37,513
0
Сколько цифр «2» содержится
Для этого вообще не надо переводить никуда.
res = 0
while x:
res += x % 3 == 2
x //= 3
А переводится аналогично, только цифры сохраняем в массив, а потом его переворачиваем.
А если число уже разложено на нужные слагаемые, то надо просто их сгруппировать и пересчитать.
Qwertiy
- 123,725