OFFSET
0,7
COMMENTS
Row lengths are A084558. This sequence contains every finite sequence of nonnegative integers.
T(n,k)=A235168(n,k) for k=0..23; a(n) = A235168(n) for n=0..63, when both tables are seen as flattened lists. - Reinhard Zumkeller, Jan 05 2014
LINKS
Reinhard Zumkeller, Rows n = 0..2000 of triangle, flattened
C. A. Laisant, Sur la numération factorielle, application aux permutations, Bulletin de la Société Mathématique de France, 16 (1888), p. 176-183.
Wikipedia, Factorial number system
EXAMPLE
Triangle begins:
0
1
1, 0
1, 1
2, 0
2, 1
1, 0, 0
For example, 11 in factorial base is 121 (1*6 + 2*2 + 1*1), so row 11 is 1,2,1.
MAPLE
b:= proc(n, i) local r; `if`(n<i, [n],
[b(iquo(n, i, 'r'), i+1)[], r])
end:
T:= n-> b(n, 2)[]:
seq(T(n), n=0..50); # Alois P. Heinz, Mar 19 2014
MATHEMATICA
b[n_, i_] := b[n, i] = Module[{q, r}, If[n < i, {n}, {q, r} = QuotientRemainder[n, i]; Append[b[q, i + 1], r]]];
T[n_] := b[n, 2];
Table[T[n], {n, 0, 40}] // Flatten (* Jean-François Alcover, Feb 03 2018, after Alois P. Heinz *)
PROG
(Haskell)
a108731 n k = a108731_row n !! k
a108731_row 0 = [0]
a108731_row n = t n $ reverse $ takeWhile (<= n) $ tail a000142_list
where t 0 [] = []
t x (b:bs) = x' : t m bs where (x', m) = divMod x b
a108731_tabf = map a108731_row [0..]
-- Reinhard Zumkeller, Jun 04 2012
(PARI) A108731_row(n)={n=[n]; while(n[1], n=concat(divrem(n[1], 1+#n), n[^1]); n[1]||break); n[^1]~} \\ M. F. Hasler, Jun 20 2017
(Python)
def row(n, i=2): return [n] if n < i else [*row(n//i, i=i+1), n%i]
print([d for n in range(35) for d in row(n)]) # Michael S. Branicky, Oct 02 2024
CROSSREFS
KEYWORD
easy,nonn,tabf,base
AUTHOR
Franklin T. Adams-Watters, Jun 22 2005
EXTENSIONS
Added a(0)=0 and offset changed accordingly by Reinhard Zumkeller, Jun 04 2012
STATUS
approved