求1 + 2^a + 2^(2a+1) = b^2的整数解

来源:互联网 发布:mac字体下载 编辑:程序博客网 时间:2024/04/29 15:12

题目:求所有的整数对(ab),使1 + 2a + 22a+1 = b2成立。

解法:

显然, a=0 b=2. 如果 a=1 a=2, b 没有整数解. 如果a=-1, b也没有整数解,如果 a<-1, 等式左边 (1 + 2a + 22a+1 ) 的值不是整数. 所以接下来只需考虑 a>2 的情况。

按下列次序转换方程:

1 + 2a + 22a+1 = b2

2a + 22a+1 = b2 - 1

2a (1+ 2a+1) = (b - 1)(b + 1)

如果ab存在整数解, 则必定存在整数 i/j/m,使得下面3个等式成立。

i*j=(1+ 2a+1) ; ---[1] 根据该式,ij必定为奇数.

i*2m  = b-1;     ---[2]

j*2a-m =b+1;    ---[3]

合并[2][3]式可以得到:

i*2m  = j*2a-m  - 2;

i*2m-1  = j*2a-m-1  - 1; 根据该式,可以确定m=0 m=1 (如果 m<0, 等式左边不是整数, 但右边是。如果 m>1,等式左边是偶数,)

m=0时,a=0b=2

m=1

i = j*2a-2 - 1; 将该式代入[1] 可得:

(j*2a-2 - 1)*j = 1+ 2a+1;

j 2*2a-2 - j = 1+ 2a+1;

2a-2 (j 2 – 8) = j + 1; 由于 a>2 并且j 是基数, 所以j只能为 3. j=3时,a=4, b=23.

所以总共只有4组整数解: (0, 2) (0, -2)(4, 23) (4, -23)

 

这道题是公司的一个同事在内部论坛发的问题,不知道题目的来源,我也没在网上搜索。

感谢2个同事指出了我的解法中的2个小错误。

 

原创粉丝点击