OFFSET
1,4
COMMENTS
The array is read by descending antidiagonals as A(1,1), A(1,2), A(2,1), A(1,3), A(2,2), A(3,1), etc.
LINKS
MathWorld, Pairing Function
FORMULA
EXAMPLE
The top left 14 X 14 corner of the array:
-1, 1, 2, 4, 7, 11, 16, 22, 29, 37, 46, 56, 67, 79
1, -2, 3, 5, 8, 12, 17, 23, 30, 38, 47, 57, 68, 80
3, 2, -3, 6, 9, 13, 18, 24, 31, 39, 48, 58, 69, 81
6, 5, 4, -4, 10, 14, 19, 25, 32, 40, 49, 59, 70, 82
10, 9, 8, 7, -5, 15, 20, 26, 33, 41, 50, 60, 71, 83
15, 14, 13, 12, 11, -6, 21, 27, 34, 42, 51, 61, 72, 84
21, 20, 19, 18, 17, 16, -7, 28, 35, 43, 52, 62, 73, 85
28, 27, 26, 25, 24, 23, 22, -8, 36, 44, 53, 63, 74, 86
36, 35, 34, 33, 32, 31, 30, 29, -9, 45, 54, 64, 75, 87
45, 44, 43, 42, 41, 40, 39, 38, 37, -10, 55, 65, 76, 88
55, 54, 53, 52, 51, 50, 49, 48, 47, 46, -11, 66, 77, 89
66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, -12, 78, 90
78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, 67, -13, 91
91, 90, 89, 88, 87, 86, 85, 84, 83, 82, 81, 80, 79, -14
PROG
(Scheme)
(define (A285732bi row col) (cond ((= row col) (- row)) ((> row col) (A000027bi (- row col) col)) (else (A000027bi row (- col row)))))
(Python)
def T(n, m): return ((n + m)**2 - n - 3*m + 2)//2
def A(n, k): return -n if n == k else T(n - k, k) if n>k else T(n, k - n)
for n in range(1, 21): print([A(k, n - k + 1) for k in range(1, n + 1)]) # Indranil Ghosh, May 03 2017
CROSSREFS
KEYWORD
sign,tabl
AUTHOR
Antti Karttunen, May 03 2017
STATUS
approved