login
A178475
Permutations of 12345: Numbers having each of the decimal digits 1,...,5 exactly once, and no other digit.
6
12345, 12354, 12435, 12453, 12534, 12543, 13245, 13254, 13425, 13452, 13524, 13542, 14235, 14253, 14325, 14352, 14523, 14532, 15234, 15243, 15324, 15342, 15423, 15432, 21345, 21354, 21435, 21453, 21534, 21543, 23145, 23154, 23415
OFFSET
1,1
COMMENTS
There are 5! = 120 terms in this finite subsequence of A030299.
It would be interesting to conceive simple and/or efficient functions which yield (a) the n-th term of this sequence: f(n) = a(n), (b) for a given term, the subsequent one: f(a(n)) = a(1 + (n mod 5!)).
From Nathaniel Johnston, May 19 2011: (Start)
Individual terms a(n) can be computed efficiently via the following procedure: Define b(n,k) = 1 + floor(((n-1) mod (k+1)!)/k!) for k = 1, 2, 3, 4. The first digit of a(n) is b(n,4). The second digit of a(n) is the b(n,3)-th number not already used. The third digit of a(n) is the b(n,2)-th number not already used. The fourth digit of a(n) is the b(n,1)-th number not already used, and the final digit of a(n) is the only digit remaining. This procedure generalizes in the obvious way for related sequences such as A178476.
For example, if n = 38 then we compute b(38,1) = 2, b(38,2) = 1, b(38,3) = 3, b(38,4) = 2. Thus a(38) = 24153 (2, followed by the 3rd digit not yet used, followed by the 1st digit not yet used, followed by the 2nd digit not yet used, followed by the last remaining digit).
(End)
LINKS
Nathaniel Johnston, Table of n, a(n) for n = 1..120 (full sequence)
FORMULA
a(n) + a(5! + 1 - n) = 66666.
floor( a(n) / 10^4 ) = ceiling( n / 4! ).
a(n) = A030299(n+33).
a(n) == 6 (mod 9).
a(n) = 6 + 9*A178485(n).
MATHEMATICA
FromDigits/@Permutations[Range[5]] (* Harvey P. Dale, Jan 19 2019 *)
PROG
(PARI) A178475(n)={my(b=vector(4, k, 1+(n-1)%(k+1)!\k!), t=b[4], d=vector(4, i, i+(i>=t))); for(i=1, 3, t=10*t+d[b[4-i]]; d=vecextract(d, Str("^"b[4-i]))); t*10+d[1]} \\ - M. F. Hasler (following N. Johnston's comment), Jan 10 2012
(PARI) v=vector(5, i, 10^(i-1))~; A178475=vecsort(vector(5!, i, numtoperm(5, i)*v))
is_A178475(x)={ vecsort(Vecsmall(Str(x)))==Vecsmall("12345") }
forstep( m=12345, 54321, 9, is_A178475(m) & print1(m", "))
CROSSREFS
KEYWORD
fini,full,easy,nonn,base
AUTHOR
M. F. Hasler, May 28 2010
STATUS
approved