jou678   1년 전

1~10**18까지 숫자중에서

n = int(math.log(x, 2))

2**n 이 x 보다 크게 되는 x가 있을까요?

t = x -2**n을 했을 때

t가 음수가 되는 거 같아서요...

jou678   1년 전

자문자답입니다만..


>>> a = 2**59

>>> math.log(a - 1, 2)

59.00000000000001

>>> b = math.log(a - 1, 2)

>>> 2**b > a

True

댓글을 작성하려면 로그인해야 합니다.