先考虑对哪些正整数n,2^n-1或2^n+1是完全平方数.
(1) 对于前者,n = 1时,2^n-1 = 1是完全平方数.
n ≥ 2时,2^n-1 ≡ 3 (mod 4),因此不可能是完全平方数.
(2) 对于后者,设有正整数x满足x^2 = 2^n+1,则2^n = x^2-1 = (x+1)(x-1).
因为x+1与x-1中至少有一个不被4整除,所以另一个必须被2^(n-1)整除.
由此可得x ≥ 2^(n-1)-1,2^n = x^2-1 ≥ (2^(n-1)-2)·2^(n-1).
化简得2^(n-1) ≤ 4,因此n ≤ 3.
对n = 1,2,3分别验证知,只有n = 3时2^n+1 = 9为完全平方数.
回到原题.
对质数p > 2,可设p = 2k+1,k为正整数.
于是(2^(p-1)-1)/p = (2^(2k)-1)/p = (2^k-1)(2^k+1)/p.
注意有(2^k-1,2^k+1) = (2^k-1,2) = 1,即2^k+1与2^k-1互质.
质数p | (2^k-1)(2^k+1),因此p整除二者之一.
(1) 若p | 2^k-1,即(2^k-1)/p为整数.
一方面,2^k+1与(2^k-1)/p也是互质的,
另一方面,二者的乘积是完全平方数.
这说明二者都是完全平方数.
已证仅当k = 3时,2^k+1是完全平方数.
对应p = 7可验证满足要求.
(2) 若p | 2^k+1,即(2^k+1)/p为整数.
同样由2^k-1与(2^k+1)/p互质,且二者乘积为完全平方数,
可得二者都是完全平方数.
已证仅当k = 1时,2^k-1是完全平方数.
对应p = 3可验证满足要求.
综上,满足要求的质数p仅有3和7.