OFFSET
1,2
COMMENTS
A permutation of the natural numbers.
a(n) is a pairing function: a function that reversibly maps Z^{+} x Z^{+} onto Z^{+}, where Z^{+} is the set of integer positive numbers.
Layer is pair of sides of square from T(1,n) to T(n,n) and from T(n,n) to T(n,1). Enumeration table T(n,k) is layer by layer. The order of the list:
T(1,1)=1;
T(1,2), T(2,1), T(2,2);
. . .
T(1,n), T(3,n), ... T(n,3), T(n,1), T(2,n), T(4,n), ... T(n,4), T(n,2);
...
LINKS
Boris Putievskiy, Rows n = 1..140 of triangle, flattened
Boris Putievskiy, Transformations [of] Integer Sequences And Pairing Functions arXiv:1212.2732 [math.CO], 2012.
Eric W. Weisstein, MathWorld: Pairing functions
FORMULA
As a table:
T(n,k) = n*n - (k mod 2)*n + 2 - floor((k+2)/2), if n>k;
T(n,k) = k*k - ((n mod 2)+1)*k + floor((n+3)/2), if n<=k.
As a linear sequence:
a(n) = i*i - (j mod 2)*i + 2 - floor((j+2)/2), if i>j;
a(n) = j*j - ((i mod 2)+1)*j + floor((i+3)/2), if i<=j; where i = n-t*(t+1)/2, j = (t*t+3*t+4)/2-n, t = floor((-1+sqrt(8*n-7))/2).
EXAMPLE
The start of the sequence as table:
1 2 5 10 17 26 ...
3 4 8 14 22 32 ...
7 9 6 11 18 27 ...
13 16 12 15 23 33 ...
21 25 20 24 19 28 ...
31 36 30 35 29 34 ...
...
The start of the sequence as triangle array read by rows:
1;
2, 3;
5, 4, 7;
10, 8, 9, 13;
17, 14, 6, 16, 21;
26, 22, 11, 12, 25, 31;
...
PROG
(Python)
t=int((math.sqrt(8*n-7) - 1)/ 2)
i=n-t*(t+1)/2
j=(t*t+3*t+4)/2-n
if i > j:
result=i*i-(j%2)*i+2-int((j+2)/2)
else:
result=j*j-((i%2)+1)*j + int((i+3)/2)
CROSSREFS
KEYWORD
nonn,tabl
AUTHOR
Boris Putievskiy, Mar 05 2013
STATUS
approved