|
|
A023142
|
|
Number of cycles of function f(x) = 10x mod n.
|
|
11
|
|
|
1, 1, 3, 1, 1, 3, 2, 1, 9, 1, 6, 3, 3, 2, 3, 1, 2, 9, 2, 1, 6, 6, 2, 3, 1, 3, 15, 2, 2, 3, 3, 1, 18, 2, 2, 9, 13, 2, 9, 1, 9, 6, 3, 6, 9, 2, 2, 3, 3, 1, 6, 3, 5, 15, 6, 2, 6, 2, 2, 3, 2, 3, 18, 1, 3, 18, 3, 2, 6, 2, 3, 9, 10, 13, 3, 2, 17, 9, 7, 1, 21, 9, 3, 6, 2, 3, 6, 6, 3, 9, 16, 2, 9, 2, 2, 3, 2, 3, 54, 1, 26
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,3
|
|
LINKS
|
|
|
FORMULA
|
a(n) = Sum_{d|m} phi(d)/ord(10, d), where m is n with all factors of 2 and 5 removed. - T. D. Noe, Apr 21 2003
|
|
EXAMPLE
|
a(12) = 3 because the function 10x mod 12 has the three cycles (0),(1,10,4),(2,8).
|
|
MATHEMATICA
|
CountFactors[p_, n_] := Module[{sum=0, m=n, d, f, i, ps, j}, ps=Transpose[FactorInteger[p]][[1]]; Do[While[Mod[m, ps[[j]]]==0, m/=ps[[j]]], {j, Length[ps]}]; d=Divisors[m]; Do[f=d[[i]]; sum+=EulerPhi[f]/MultiplicativeOrder[p, f], {i, Length[d]}]; sum]; Table[CountFactors[10, n], {n, 100}]
|
|
PROG
|
(PARI) a(n)=n/=2^valuation(n, 2)*5^valuation(n, 5); sumdiv(n, d, eulerphi(d)/znorder(Mod(10, d))) \\ Charles R Greathouse IV, Apr 24 2013
(Python)
from sympy import totient, n_order, divisors
m = n>>(~n & n-1).bit_length()
a, b = divmod(m, 5)
while not b:
m = a
a, b = divmod(m, 5)
return sum(totient(d)//n_order(10, d) for d in divisors(m, generator=True) if d>1)+1 # Chai Wah Wu, Apr 09 2024
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|