【发布时间】:2015-08-19 17:57:26
【问题描述】:
一个无限长的0和1的流即将到来,你必须找出到目前为止形成的数字是否可以被3整除。
我通过找到二进制数的十进制等价物然后将所有数字相加并确定该总和是否可被 3 整除来尝试它。但我知道这是错误的方法,因为数字是无限长的,所以一段时间后数字会超出范围。那么解决这个问题的方法是什么。
另一种方法是找出偶数位置设置位和奇数位置设置位,如果奇数和偶数位置的设置位总数之差可被 3 整除,则数字将可被 3 整除。 但这里的总和时间数也会超出范围。
有没有更好的方法?
【问题讨论】:
-
Check if a number is divisible by 3 的可能重复项(至少我认为是,这个问题在 IMO 中有点神秘)