login
A359344
Largest pandigital square with n digits.
2
9814072356, 99853472016, 998732401956, 9998490637521, 99992580137641, 999984024130576, 9999925800137641, 99999987340240516, 999999258000137641, 9999999562540763281, 99999992580000137641, 999999991102375684521, 9999999925800000137641, 99999999986188478340025
OFFSET
10,1
COMMENTS
Pandigital squares are perfect squares containing each digit from 0 to 9 at least once.
For number of digits n >= 14, every second term is of the form 9...92580...0137641 with n/2 - 3 leading nines and n/2 - 6 zeros after the middle three digits 258. This term is 9...9629^2 with n/2 - 3 leading nines. This is the case since ((10^m - 1)*10^3 + 629)^2 = 10^(2*m+6) - 2*10^(m+6) + 10^(m+6) + 258*10^(m+3) + 10^6 - 1258*10^3 + 395641 = (10^m - 1)*10^(m+6) + 258*10^(m+3) + 137641 with m = (n-6)/2 and n >= 14 even, and is the last n-digit square containing all digits from 0 to 9.
FORMULA
a(n) = (10^(n/2-3)-1)*10^(n/2+3) + 258*10^(n/2) + 137641 for n >= 14 even.
MAPLE
a:=proc(n::posint) local s, k, K: if n<10 then s:=NULL: else for k from floor(sqrt(10^n)) to ceil(sqrt(10^(n-1))) by -1 do K:=convert(k^2, base, 10); if nops({op(K)})=10 then s:=k^2: break: fi: od: fi: return s; end:
seq(a(n), n=10..30);
PROG
(Python)
from math import isqrt
def c(n): return len(set(str(n))) == 10
def a(n):
ub, lb = isqrt(10**n-1), isqrt(10**(n-1)) if n&1 else isqrt(10**(n-1))+1
return next((k*k for k in range(ub, lb-1, -1) if c(k*k)), None)
print([a(n) for n in range(10, 24)]) # Michael S. Branicky, Dec 27 2022
CROSSREFS
KEYWORD
nonn,base
AUTHOR
Martin Renner, Dec 27 2022
STATUS
approved