OFFSET
1,2
COMMENTS
LINKS
Clark Kimberling, Antidiagonals n = 1..60, flattened
Clark Kimberling and John E. Brown, Partial Complements and Transposable Dispersions, J. Integer Seqs., Vol. 7, 2004.
EXAMPLE
Northwest corner:
1 4 10 19 30 44 61 81 103
2 6 13 23 35 50 68 89 112
3 8 16 27 40 56 75 97 121
5 11 20 32 46 63 83 106 131
7 14 23 37 52 70 91 115 141
9 17 28 42 58 77 99 124 151
MATHEMATICA
r = E; z = 100; s[0] = 1; s[n_] := s[n] = s[n - 1] + 1 + Floor[n*r];
w[i_, j_] := u[[i]] + v[[j]] + (i - 1)*(j - 1) - 1;
Grid[Table[w[i, j], {i, 1, 10}, {j, 1, 10}]] (*A 283943, array*)
Flatten[Table[w[k, n - k + 1], {n, 1, 20}, {k, 1, n}]] (* A283943, sequence*)
PROG
(PARI)
\\ Produces the triangle when the array is read by antidiagonals
r = exp(1);
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 mpmath import *
mp.dps = 100
def s(n): return 1 if n<1 else s(n - 1) + 1 + int(math.floor(n*e))
def p(n): return n + 1 + sum([int(math.floor((n - k)/e)) 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
AUTHOR
Clark Kimberling, Mar 26 2017
STATUS
approved