A130448 Squares whose decimal representation contains no proper subsequence which is a positive square.
1, 4, 9, 25, 36, 576, 676, 7056, 80656, 665856, 2027776, 2802276, 22282727076, 77770707876, 78807087076, 7888885568656, 8782782707776, 72822772707876, 555006880085056, 782280288087076, 827702888070276, 888288787822276, 2282820800707876, 7880082008070276, 80077778877070276, 88778000807227876, 782828878078078276, 872727072820287876
Offset: 1
Examples
576 is in the list because none of its proper subsequences 5, 7, 6, 57, 76 or 56 are squares.
Links
- Martin Raab, Table of n, a(n) for n = 1..55 (terms 1..50 from Giovanni Resta, terms 51..55 from Martin Raab)
- Michael S. Branicky, Python program
- Wikipedia, Subsequence
Programs
-
Mathematica
fQ[n_] := Module[{d = IntegerDigits[n], ds, sq}, ds = FromDigits /@ Union[Most[Rest[Subsets[d]]]]; sq = Select[ds, # > 0 && IntegerQ[Sqrt[#]] &, 1]; sq == {}]; Select[Range[0, 100000]^2, fQ] (* T. D. Noe, Mar 05 2014 *)
-
PARI
isok(n) = {my(d = digits(n)); for (k = 1, #d, for (j= 1, #d - k + 1, if (j != #d, sd = vector(j, i, d[k+i-1]); nsd = fromdigits(sd); if (nsd && issquare(nsd), return(0));););); return (1);} \\ Michel Marcus, Apr 21 2018
-
Python
# see linked program for faster version from math import isqrt from itertools import chain, combinations as C, count, islice def issquare(n): return isqrt(n)**2 == n def psets(s): # nonempty proper subsets of s return chain.from_iterable(C(s, r) for r in range(1, len(s))) def cond(s): ss = ("".join(t) for t in psets(s) if t[0] != "0") return not any(issquare(int(u)) for u in ss) def agen(): yield from (k**2 for k in count(1) if cond(str(k**2))) print(list(islice(agen(), 15))) # Michael S. Branicky, Feb 23 2023
Extensions
Edited by N. J. A. Sloane, Sep 14 2007
a(23)-a(28) from Mauro Fiorentini, Jan 24 2017
Comments