A292380 Base-2 expansion of a(n) encodes the steps where multiples of 4 are encountered when map x -> A252463(x) is iterated down to 1, starting from x=n.
0, 0, 0, 1, 0, 0, 0, 3, 2, 0, 0, 1, 0, 0, 0, 7, 0, 4, 0, 1, 0, 0, 0, 3, 4, 0, 6, 1, 0, 0, 0, 15, 0, 0, 0, 9, 0, 0, 0, 3, 0, 0, 0, 1, 2, 0, 0, 7, 8, 8, 0, 1, 0, 12, 0, 3, 0, 0, 0, 1, 0, 0, 2, 31, 0, 0, 0, 1, 0, 0, 0, 19, 0, 0, 8, 1, 0, 0, 0, 7, 14, 0, 0, 1, 0, 0, 0, 3, 0, 4, 0, 1, 0, 0, 0, 15, 0, 16, 2, 17, 0, 0, 0, 3, 0
Offset: 1
Examples
For n = 4, the starting value is a multiple of four, after which follows A252463(4) = 2, and A252463(2) = 1, the end point of iteration, and neither 2 nor 1 is a multiple of four, thus a(4) = 1*(2^0) + 0*(2^1) + 0*(2^2) = 1. For n = 8, the starting value is a multiple of four, after which follows A252463(8) = 4 (also a multiple), continuing as before as 4 -> 2 -> 1, thus a(8) = 1*(2^0) + 1*(2^1) + 0*(2^2) + 0*(2^3) = 3. For n = 9, the starting value is not a multiple of four, after which follows A252463(9) = 4 (which is), continuing as before as 4 -> 2 -> 1, thus a(9) = 0*(2^0) + 1*(2^1) + 0*(2^2) + 0*(2^3) = 2.
Links
Programs
-
Mathematica
Table[FromDigits[Reverse@ NestWhileList[Function[k, Which[k == 1, 1, EvenQ@ k, k/2, True, Times @@ Power[Which[# == 1, 1, # == 2, 1, True, NextPrime[#, -1]] & /@ First@ #, Last@ #] &@ Transpose@ FactorInteger@ k]], n, # > 1 &] /. k_ /; IntegerQ@ k :> If[Mod[k, 4] == 0, 1, 0], 2], {n, 105}] (* Michael De Vlieger, Sep 21 2017 *)
-
PARI
a(n) = my(m=factor(n),k=-1,ret=0); for(i=1,matsize(m)[1], ret += bitneg(0,m[i,2]-1) << (primepi(m[i,1])+k); k+=m[i,2]); ret; \\ Kevin Ryde, Dec 11 2020
-
Python
from sympy.core.cache import cacheit from sympy.ntheory.factor_ import digits from sympy import factorint, prevprime from operator import mul from functools import reduce def a292370(n): k=digits(n, 4)[1:] return 0 if n==0 else int("".join(['1' if i==0 else '0' for i in k]), 2) def a064989(n): f=factorint(n) return 1 if n==1 else reduce(mul, [1 if i==2 else prevprime(i)**f[i] for i in f]) def a252463(n): return 1 if n==1 else n//2 if n%2==0 else a064989(n) @cacheit def a292384(n): return 1 if n==1 else 4*a292384(a252463(n)) + n%4 def a(n): return a292370(a292384(n)) print([a(n) for n in range(1, 111)]) # Indranil Ghosh, Sep 21 2017
-
Scheme
(define (A292380 n) (A292370 (A292384 n)))