A072594 In prime factorization of n replace multiplication with bitwise logical 'xor'.
1, 2, 3, 0, 5, 1, 7, 2, 0, 7, 11, 3, 13, 5, 6, 0, 17, 2, 19, 5, 4, 9, 23, 1, 0, 15, 3, 7, 29, 4, 31, 2, 8, 19, 2, 0, 37, 17, 14, 7, 41, 6, 43, 11, 5, 21, 47, 3, 0, 2, 18, 13, 53, 1, 14, 5, 16, 31, 59, 6, 61, 29, 7, 0, 8, 10, 67, 17, 20, 0, 71, 2, 73, 39, 3, 19, 12, 12, 79, 5, 0, 43, 83, 4
Offset: 1
Examples
a(35) = a(5*7) = a(5) 'xor' a(7) = '101' xor '111' = '010' = 2.
Links
- R. Zumkeller, Table of n, a(n) for n = 1..10000
Programs
-
Haskell
import Data.Bits (xor) a072594 = foldl1 xor . a027746_row :: Integer -> Integer -- Reinhard Zumkeller, Nov 17 2012
-
Mathematica
a[n_] := BitXor @@ Flatten[ Table[ First[#], {Last[#]} ]& /@ FactorInteger[n] ]; Table[a[n], {n, 1, 84}] (* Jean-François Alcover, Mar 11 2013 *)
-
PARI
a(n)=if(n==1, return(1)); my(f=factor(n),t); for(i=1,#f~, if(f[i,2]%2, t=bitxor(t,f[i,1]))); t \\ Charles R Greathouse IV, Aug 28 2016
-
Python
from sympy import factorint from operator import _xor_ from functools import reduce def a(n): return reduce(_xor_, (f for f in factorint(n, multiple=True))) if n > 1 else 1 print([a(n) for n in range(1, 85)]) # Michael S. Branicky, May 31 2025
Comments