OFFSET
1,2
COMMENTS
a(n) <= n; a(a(n)) = a(n); for all factors p^m of a(n): p=2 or p=4*k+1.
LINKS
Alois P. Heinz, Table of n, a(n) for n = 1..10000
FORMULA
Multiplicative with a(p) = (if p==3 (mod 4) then 1 else p).
EXAMPLE
a(90) = a(2*3*3*5) = a(2*(4*0+3)^2*(4*1+1)^1) = 2*1^2*5 = 10.
MAPLE
a:= n-> mul(`if`(irem(i[1], 4)=3, 1, i[1]^i[2]), i=ifactors(n)[2]):
seq(a(n), n=1..100); # Alois P. Heinz, Jun 09 2014
MATHEMATICA
a[n_] := n/Product[{p, e} = pe; If[Mod[p, 4] == 3, p^e, 1], {pe, FactorInteger[n]}];
Array[a, 100] (* Jean-François Alcover, May 29 2019 *)
PROG
(Python)
from sympy import factorint
from operator import mul
def a(n):
f = factorint(n)
return 1 if n == 1 else reduce(mul, [1 if i%4==3 else i**f[i] for i in f])# Indranil Ghosh, May 08 2017
(PARI) a(n) = my(f=factor(n)); for (k=1, #f~, if ((f[k, 1] % 4) == 3, f[k, 1]=1)); factorback(f); \\ Michel Marcus, May 08 2017
CROSSREFS
KEYWORD
nonn,mult,easy
AUTHOR
Reinhard Zumkeller, Jun 17 2002
STATUS
approved