cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A220603 First inverse function (numbers of rows) for pairing function A081344.

Original entry on oeis.org

1, 2, 2, 1, 1, 2, 3, 3, 3, 4, 4, 4, 4, 3, 2, 1, 1, 2, 3, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 5, 4, 3, 2, 1, 1, 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 7, 6, 5, 4, 3, 2, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
Offset: 1

Views

Author

Boris Putievskiy, Dec 16 2012

Keywords

Examples

			The start of the sequence as triangle array T(n,k) read by rows, row number k contains 2k-1 numbers:
  1;
  2,2,1;
  1,2,3,3,3;
  4,4,4,4,3,2,1;
  ...
If k is odd the row is 1,2,...,k,k...k (k times repetition "k" at the end of row).
If k is even the row is k,k,...k,k-1,k-2,...1 (k times repetition "k" at the start of row).
		

Crossrefs

Cf. A081344.

Programs

  • Mathematica
    row[n_] := If[OddQ[n], Range[n-1]~Join~Table[n, {n}], Table[n, {n}]~Join~ Range[n-1, 1, -1]];
    row /@ Range[10] // Flatten (* Jean-François Alcover, Nov 19 2019 *)
  • Python
    t=int(math.sqrt(n-1))+1
    i=(t % 2)*min(t,n-(t-1)**2) + ((t+1) % 2)*min(t,t**2-n+1)

Formula

As a linear array, the sequence is a(n) = mod(t;2)*min{t; n - (t - 1)^2} + mod(t + 1; 2)*min{t; t^2 - n + 1}, where t=floor[sqrt(n-1)]+1.