OFFSET
1,2
COMMENTS
Self-inverse 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.
In general, let b(z) be a sequence of integers and denote number of antidiagonal table T(n,k) by z=n+k-1. Natural numbers placed in table T(n,k) by antidiagonals. The order of placement - by antidiagonal downwards, if b(z) is odd; by antidiagonal upwards, if b(z) is even. T(n,k) read by antidiagonals downwards. For A218890 -- the order of placement -- at the beginning m antidiagonals downwards, next m antidiagonals upwards and so on - b(z)=floor((z+m-1)/m). For this sequence b(z)=z^2 mod 3. (This comment should be edited for clarity, Joerg Arndt, Dec 11 2014)
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
For the general case.
T(n,k) = (z*(z-1)-(-1+(-1)^b(z))*n+(1+(-1)^b(z))*k)/2, where z=n+k-1 (as a table).
a(n) = (z*(z-1)-(-1+(-1)^b(z))*i+(1+(-1)^b(z))*j)/2, where i=n-t*(t+1)/2, j=(t*t+3*t+4)/2-n, t=floor((-1+sqrt(8*n-7))/2), z=i+j-1 (as a linear sequence).
For this sequence b(z)=z^2 mod 3.
T(n,k) = (z*(z-1)-(-1+(-1)^(z^2 mod 3))*n+(1+(-1)^(z^2 mod 3))*k)/2, where z=n+k-1 (as a table).
a(n) = (z*(z-1)-(-1+(-1)^(z^2 mod 3))*i+(1+(-1)^(z^2 mod 3))*j)/2, where i=n-t*(t+1)/2, j=(t*t+3*t+4)/2-n, t=floor((-1+sqrt(8*n-7))/2), z=i+j-1 (as linear sequence).
EXAMPLE
The start of the sequence as table.
The direction of the placement denoted by ">" and "v".
.v.....v v...v v....v
.1.....2...6...7..11...21...22...29...45...
.3.....5...8..12..20...23...30...44...47...
>4.....9..13..19..24...31...43...48...58...
.10...14..18..25..32...42...49...59...75...
.15...17..26..33..41...50...60...74...83...
>16...27..34..40..51...61...73...84...97...
.28...35..39..52..62...72...85...98..114...
.36...38..53..63..71...86...99..113..128...
>37...54..64..70..87..100..112..129..145...
...
The start of the sequence as triangle array read by rows:
1;
2, 3;
6, 5, 4;
7, 8, 9, 10;
11, 12, 13, 14, 15;
21, 20, 19, 18, 17, 16;
22, 23, 24, 25, 26, 27, 28;
29, 30, 31, 32, 33, 34, 35, 36;
45, 44, 43, 42, 41, 40, 39, 38, 37;
...
Row r consists of r consecutive numbers from r*r/2-r/2+1 to r*r/2+r.
If r is not divisible by 3, rows are increasing.
If r is divisible by 3, rows are decreasing.
MATHEMATICA
T[n_, k_] := With[{z = n + k - 1}, (z*(z - 1) - (-1 + (-1)^Mod[z^2, 3])*n + (1 + (-1)^Mod[z^2, 3])*k)/2];
Table[T[n - k + 1, k], {n, 1, 12}, {k, n, 1, -1}] // Flatten (* Jean-François Alcover, Jul 22 2018 *)
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
z=i+j-1
result=(z*(z-1)-(-1+(-1)**(z**2%3))*i+(1+(-1)**(z**2%3))*j)/2
CROSSREFS
KEYWORD
AUTHOR
Boris Putievskiy, Mar 06 2013
STATUS
approved