login
Minimum number of zeros in a binary n-digit perfect square, or -1 if there are no such numbers.
1

%I #20 Apr 01 2022 19:10:37

%S 0,-1,2,2,2,3,2,4,3,4,3,4,4,5,2,5,4,6,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,

%T 7,7,7,7,8,6,8,8,6,7,7,8,8,9,8,9,9,8,9,10,9,9,10,9,9,9,9,10,10,10,10,

%U 11,10,11,11,11,9,9,11,11,11,12,11,12,11,12

%N Minimum number of zeros in a binary n-digit perfect square, or -1 if there are no such numbers.

%C Is there a formula that is easy to compute?

%e a(6) = 3, because there are two 6-bit squares 36 = 100100_2 and 49 110001_2 with 4 and 3 zeros, respectively.

%e a(2) = -1, because the first two perfect squares 1 = 1_2 and 4 = 100_2 have 1 and 3 bits, respectively.

%o (Python)

%o from gmpy2 import is_square, popcount

%o for n in range(1, 33):

%o m=n+1

%o for k in range(2**(n-1), 2**n):

%o if is_square(k):

%o m=min(m, n-popcount(k))

%o print(n, -1 if m>n else m)

%o (Python 3.10+)

%o def A352631(n): return -1 if n == 2 else min(n-(k**2).bit_count() for k in range(1+isqrt(2**(n-1)-1),1+isqrt(2**n))) # _Chai Wah Wu_, Mar 28 2022

%Y Cf. A000290, A023416, A070939.

%K sign,base

%O 1,3

%A _Martin Ehrenstein_, Mar 25 2022

%E a(43)-a(71) from _Pontus von Brömssen_, Mar 26 2022

%E a(72)-a(80) from _Chai Wah Wu_, Apr 01 2022