login
Irregular table: row n contains values k (in descending order) for which n is a k-gonal number.
9

%I #20 Mar 26 2021 06:32:14

%S 3,4,5,6,3,7,8,9,4,10,3,11,12,5,13,14,15,6,3,16,4,17,18,7,19,20,21,8,

%T 3,22,5,23,24,9,25,4,26,27,10,28,6,3,29,30,11,31,32,33,12,34,7,35,5,

%U 36,13,4,3,37,38,39,14,40,8,41,42,15

%N Irregular table: row n contains values k (in descending order) for which n is a k-gonal number.

%C Every row begins with n and contains all values of k for which n is a k-gonal number.

%C The cardinality of row n is A177025(n). In particular, if n is prime, then row n contains only n.

%H T. D. Noe, <a href="/A177028/b177028.txt">Rows n = 3..1000, flattened</a>

%e The table starts with row n=3 as:

%e 3;

%e 4;

%e 5;

%e 6, 3;

%e 7;

%e 8;

%e 9, 4;

%e 10, 3;

%e 11;

%e 12, 5;

%e 13;

%e 14;

%e 15, 6, 3;

%e 16, 4;

%e 17;

%e 18, 7;

%e 19;

%e 20;

%e Before n=37, we have row n=36: {36, 13, 4, 3}. Thus 36 is k-gonal for k=3, 4, 13 and 36.

%p P := proc(n,k) n/2*((k-2)*n-k+4) ;end proc:

%p A177028 := proc(n) local k ,j,r,kg ; r := {} ; for k from n to 3 by -1 do for j from 1 do kg := P(j,k) ; if kg = n then r := r union {k} ;elif kg > n then break ; end if; end do; end do: sort(convert(r,list),`>`) ; end proc:

%p for n from 3 to 20 do print(A177028(n)) ; end do: # _R. J. Mathar_, Apr 17 2011

%t nn = 100; t = Table[{}, {nn}]; Do[n = 2; While[p = n*(4 - 2*n - r + n*r)/2; p <= nn, AppendTo[t[[p]], r]; n++], {r, 3, nn}]; Flatten[Reverse /@ t] (* _T. D. Noe_, Apr 18 2011 *)

%o (PARI) row(n) = my(list = List()); for (k=3, n, if (ispolygonal(n, k), listput(list, k))); Vecrev(list); \\ _Michel Marcus_, Mar 19 2021

%o (PARI) row(n)=my(v=List());fordiv(2*n,k, if(k<2,next); if(k==n, break); my(s=(2*n/k-4+2*k)/(k-1)); if(denominator(s)==1, listput(v,s))); Vec(v) \\ _Charles R Greathouse IV_, Mar 19 2021

%Y Cf. A063778, A090467, A139600, A177025, A176948, A176774, A176775.

%K nonn,tabf,easy

%O 3,1

%A _Vladimir Shevelev_, May 01 2010