|
MAPLE
|
Good:= {1, 4, 8, 9}:
R:= 1, 9:
G[1]:= select(t -> member(t^2 mod 10, Good), Good):
for d from 2 to 27 do
G[d]:= select(t -> member(floor((t^2 mod 10^d)/10^(d-1)), Good), map(t -> seq(10^(d-1)*i+t, i=Good), G[d-1]));
for t in G[d] do
if convert(convert(t^2, base, 10), set) subset Good then R:= R, t fi
od
od:
|