| PROG
|
(PARI) f(n) = 3*n + 2*floor(n*sqrt(2)) + 2
unused(listus) = {my(v=vecsort(Vec(listus))); for (i=1, vecmax(v), if (!vecsearch(v, i), return (i)); ); };
D(nb) = {my(m = matrix(nb, nb), t); my(listus = List); for (g=1, nb, if (g==1, t = 1, t = unused(listus)); m[g, 1]=t; listput(listus, t); t = f(t); m[g, 2]=t; listput(listus, t); for (h=3, nb, t = 6*m[g, h-1] - m[g, h-2]; m[g, h] = t; listput(listus, t); ); ); m; }; \\ Michel Marcus, Jul 08 2020
|