%I #14 Jul 10 2021 10:51:28
%S 7,10,12,13,19,20,21,30,35,37,38,40,41,44,50,57,60,65,70,80,90,95,97,
%T 100,102,105,107,108,110,112,119,120,121,125,129,130,138,140,150,160,
%U 170,180,190,191,200,201,204,205,209,210,212,220,223,230,240,250
%N Numbers whose square is a nontrivial concatenation of other squares.
%C a(n) = sqrt(A019547(n)); the sequence A019547 gives the squares themselves and this sequence gives the numbers whose squares yield the numbers in A019547. All multiples of 10 are included, because for any value of x, (x*10)^2 = x^2*100, which is x^2 followed by two zeros. Every digit except 6 is used as the last digit of a number in this sequence before 50. 6 is not used as the last digit of a number in this sequence until 306.
%H Reinhard Zumkeller, <a href="/A128783/b128783.txt">Table of n, a(n) for n = 1..10000</a>
%e 13 is included because 13^2 = 169, which includes 16 and 9, two perfect squares.
%o (Haskell)
%o a128783 n = a128783_list !! (n-1)
%o a128783_list = filter (f . show . (^ 2)) [1..] where
%o f zs = g (init $ tail $ inits zs) (tail $ init $ tails zs)
%o g (xs:xss) (ys:yss)
%o | a010052 (read xs) == 1 = a010052 (read ys) == 1 || f ys || g xss yss
%o | otherwise = g xss yss
%o g _ _ = False
%o -- _Reinhard Zumkeller_, Oct 11 2011
%o (Python)
%o from math import isqrt
%o def issquare(n): return isqrt(n)**2 == n
%o def ok(n, c):
%o if n%10 in { 2, 3, 7, 8}: return False
%o if issquare(n) and c > 1: return True
%o d = str(n)
%o for i in range(1, len(d)):
%o if issquare(int(d[:i])) and ok(int(d[i:]), c+1): return True
%o return False
%o print([r for r in range(251) if ok(r*r, 1)]) # _Michael S. Branicky_, Jul 10 2021
%Y Cf. A019547.
%Y Cf. A010052, A000290; A048653 is a subsequence.
%K base,nonn
%O 1,1
%A Jonathan R. Love (japanada11(AT)yahoo.ca), Apr 07 2007
%E Missing terms 205 and 209 inserted by _Reinhard Zumkeller_, Oct 11 2011