login
A349249
Number of iterations of the digit-census function A348783 until an element of a cycle is reached.
3
6, 5, 3, 4, 6, 8, 10, 12, 14, 16, 4, 3, 1, 2, 4, 6, 8, 10, 12, 14, 2, 0, 0, 2, 4, 6, 8, 10, 12, 14, 0, 2, 2, 6, 4, 6, 8, 10, 12, 14, 4, 4, 4, 4, 6, 6, 8, 10, 12, 14, 6, 6, 6, 6, 6, 10, 8, 10, 12, 14, 8, 8, 8, 8, 8, 8, 8, 10, 12, 14, 10, 10, 10, 10, 10, 10, 10
OFFSET
0,1
COMMENTS
The length of the cycle in which the trajectory of n will end, is equal to the size of the full orbit of n under A348783, A349250(n), minus a(n).
FORMULA
a(n) = 0 iff n is element of a cycle (or "loop") under iterations of A348783,
otherwise a(n) = 1 + a(A348783(n)).
EXAMPLE
Under iterations of A348783, 0 -> 1 -> 10 -> 11 -> 20 -> 101 -> 21 -> 110 -> 21 -> ..., so the cycle (21, 110) is reached after a(0) = 6 iterations, and also a(1) = 5, a(10) = 4, a(11) = 3, a(20) = 2, a(101) = 1 and a(21) = a(110) = 0 because these two are elements of this cycle.
Similarly, 2 -> 100 -> 12 -> 110 -> 21 -> ..., so the same cycle is reached in a(2) = 3 iterations, and also a(100) = 2, a(12) = 1.
Then, 3 -> 1000 -> 13 -> 1010 -> 22 -> 200 -> 102 -> 111 -> 30 -> 1001 -> 22 -> 200 -> ..., here the cycle (22, 200, 102, 111, 30, 1001) is reached after a(3) = 4 iterations, and a(1000) = 3, a(13) = 2, a(1010) = 1 and a(n) = 0 for the elements of that cycle.
PROG
(PARI) apply( {A349249(n, S=[n], T)=while(!setsearch(S, n=A348783(n)), S=setunion(S, [n])); if(T, T-#S, A349249(n, , #S))}, [0..99])
(Python)
def f(n):
s = str(n)
return int("".join(str(s.count(d)) for d in "9876543210").lstrip("0"))
def a(n):
orbit, fn = [n], f(n)
while fn not in orbit:
orbit.append(fn)
n, fn = fn, f(fn)
return orbit.index(fn)
print([a(n) for n in range(77)]) # Michael S. Branicky, Nov 18 2021
CROSSREFS
Cf. A348783, A349250 (length of the full orbit).
Sequence in context: A225662 A225663 A225664 * A225665 A019686 A143304
KEYWORD
nonn
AUTHOR
M. F. Hasler, Nov 17 2021
STATUS
approved