login
A283942
Rectangular array by antidiagonals: interspersion of the signature sequence of sqrt(8).
1
1, 4, 2, 10, 6, 3, 19, 13, 8, 5, 31, 23, 16, 11, 7, 46, 36, 27, 20, 14, 9, 63, 52, 41, 32, 24, 17, 12, 83, 70, 58, 47, 37, 28, 21, 15, 106, 91, 77, 65, 53, 42, 33, 25, 18, 132, 115, 99, 85, 72, 59, 48, 38, 29, 22, 161, 142, 124, 108, 93, 79, 66, 54, 43, 34
OFFSET
1,2
COMMENTS
Row n is the ordered sequence of numbers k such that A023131(k) = n. As a sequence, A283942 is a permutation of the positive integers. This is a transposable interspersion; i.e., every row intersperses all other rows, and every column intersperses all other columns.
LINKS
Clark Kimberling and John E. Brown, Partial Complements and Transposable Dispersions, J. Integer Seqs., Vol. 7, 2004.
EXAMPLE
Northwest corner:
1 4 10 19 31 46 63 83 106
2 6 13 23 36 52 70 91 115
3 8 16 27 41 58 77 99 124
5 11 20 32 47 65 85 108 134
7 14 24 37 53 72 93 117 144
9 17 28 42 59 79 101 126 154
12 21 33 48 66 87 110 136 165
MATHEMATICA
r = Sqrt[8]; z = 100;
s[0] = 1; s[n_] := s[n] = s[n - 1] + 1 + Floor[n*r];
u = Table[n + 1 + Sum[Floor[(n - k)/r], {k, 0, n}], {n, 0, z}] (* A022794 , col 1 of A283942 *)
v = Table[s[n], {n, 0, z}] (* A022793, row 1 of A283942*)
w[i_, j_] := u[[i]] + v[[j]] + (i - 1)*(j - 1) - 1;
Grid[Table[w[i, j], {i, 1, 10}, {j, 1, 10}]] (* A283942, array *)
Flatten[Table[w[k, n - k + 1], {n, 1, 20}, {k, 1, n}]] (* A283942, sequence *)
PROG
(PARI)
\\ Produces the triangle when the array is read by antidiagonals
r = sqrt(8);
z = 100;
s(n) = if(n<1, 1, s(n - 1) + 1 + floor(n*r));
p(n) = n + 1 + sum(k=0, n, floor((n - k)/r));
u = v = vector(z + 1);
for(n=1, 101, (v[n] = s(n - 1)));
for(n=1, 101, (u[n] = p(n - 1)));
w(i, j) = u[i] + v[j] + (i - 1) * (j - 1) - 1;
tabl(nn) = {for(n=1, nn, for(k=1, n, print1(w(k, n - k + 1), ", "); ); print(); ); };
tabl(10) \\ Indranil Ghosh, Mar 26 2017
(Python)
# Produces the triangle when the array is read by antidiagonals
import math
from sympy import sqrt
def s(n): return 1 if n<1 else s(n - 1) + 1 + int(math.floor(n*sqrt(8)))
def p(n): return n + 1 + sum([int(math.floor((n - k)/sqrt(8))) for k in range(0, n+1)])
v=[s(n) for n in range(0, 101)]
u=[p(n) for n in range(0, 101)]
def w(i, j): return u[i - 1] + v[j - 1] + (i - 1) * (j - 1) - 1
for n in range(1, 11):
....print [w(k, n - k + 1) for k in range(1, n + 1)] # Indranil Ghosh, Mar 26 2017
CROSSREFS
KEYWORD
nonn,tabl,easy
AUTHOR
Clark Kimberling, Mar 26 2017
STATUS
approved