如何判断一个正整数是否是4的幂?

时间:2021-05-08 15:13:43

4的幂具有的性质

  1. 4的幂用二进制可表示为长度为奇数(2的偶数次幂),且只有首位为1的形式。
    证明: 4n=(22)n=22n
  2. 4的幂减去1是3的倍数。
    证明: 4n=(1+3)n=1+3Cn1n+32Cn2n++3n=3(Cn1n+3Cn2n++3n1)+1
    因此 4n1(n1) 是3的倍数。

一个正整数是否是4的幂的充分条件

  1. 若一个二进制数长度为奇数,且只有首位为1(2的偶数幂),则这个数是4的幂。
    证明: 22m=4n
  2. 若一个数n是2的幂且(n-1)能被3整除,则这个数是4的幂。
    证明:由性质2可知,只要证明2的奇数次幂减去1之后不能被3整除即可。
    22m+11=2(22m)1=2(4m)1=2(3(Cm1m+3Cm2m++3m1)+1)1=6(Cm1m+3Cm2m++3m1)+1
    因此,2的奇数次幂减1不能被3整除。即一个数n是2的幂且(n-1)能被3整除,则这个数是4的幂。

不知道为什么,在部分浏览器上,加载网页时,Latex公式闪一下就没了,在此附上博客截图。
如何判断一个正整数是否是4的幂?