Ах, если бы это было правильное Захарово, но, увы, только симметричное. Подсказать было некому... Я далеко... И вместо памятника ВИЛ памятник юному АСП.  Ну да ладно.
В общем, поиск квадратных пирамидок. Они пришли из сопредельных пространств.
Что такое квадратная пирамидка? Это ось: 0, 1, 4, 9. И квадратные надетые кольца: 16, 25, 36, 49, 64, 81. Например: 196.  Легко приходит на ум. Дальше 841 и 38416. Ведущие нули запрещены и лучше вообще без нулей.
631421811659664 = 25128108^2. Каждое колечко — квадрат. И само число квадрат. Я программку написал, но уж больно долго работает.
Код:
\\квадратные пирамидки
{mdg=15;
vm=[0,1,4,9];
vf=[0,0,0,0,1,2,3,4,6,8];
vt=[0,1,4,9,6,5,6,9,4,1];
for( m=1,mdg, print("l=",2*m+1);
  ww=vector(m,i,[1,10]); ww[m]=[5,10];
  foreach( vm,md, 
    nm=md*10^m;
    forvec( w=ww,
      s=nm;
      for( k=1,m,
        s+=vf[w[k]]*10^(m+k)+vt[w[k]]*10^(m-k)
      ); 
      if(issquare(s),print(s," ", sqrtint(s),"^2"));
    );
  );
);
}
l=3
841 29^2
196 14^2
l=5
38416 196^2
l=7
8300161 2881^2
6061444 2462^2
l=9
380094016 19496^2
l=11
66816046144 258488^2
l=13
3003129566116 1732954^2
l=15
631421811659664 25128108^2
l=17
41260004094094569 203125587^2
Народу понравилось: много различных циклов. Хотел вернумшись улучшить, но пока другие заботы 
 
 Дайте совет!