A285707 a(n) = gcd(n, A079277(n)), a(1) = 1.
1, 1, 1, 2, 1, 2, 1, 4, 3, 2, 1, 3, 1, 2, 3, 8, 1, 2, 1, 4, 3, 2, 1, 6, 5, 2, 9, 4, 1, 3, 1, 16, 3, 2, 5, 4, 1, 2, 3, 8, 1, 6, 1, 4, 9, 2, 1, 12, 7, 10, 3, 4, 1, 6, 5, 7, 3, 2, 1, 6, 1, 2, 7, 32, 5, 2, 1, 4, 3, 2, 1, 8, 1, 2, 15, 4, 7, 6, 1, 16, 27, 2, 1, 3, 5, 2, 3, 8, 1, 9, 7, 4, 3, 2, 5, 3, 1, 2, 9, 20, 1, 6, 1, 8, 3, 2, 1, 12, 1, 10, 3, 14, 1, 6, 5, 4, 9
Offset: 1
Links
- Antti Karttunen, Table of n, a(n) for n = 1..10000
Programs
-
Mathematica
Table[GCD[n, #] &@ If[n <= 2, 1, Module[{k = n - 2, e = Floor@ Log2@ n}, While[PowerMod[n, e, k] != 0, k--]; k]], {n, 117}] (* Michael De Vlieger, Apr 26 2017 *)
-
PARI
A007947(n) = factorback(factorint(n)[, 1]); A079277(n) = { my(r); if((n > 1 && !bitand(n,(n-1))), (n/2), r=A007947(n); if(1==n,0,k = n-1; while(A007947(k*n) <> r, k = k-1); k)); }; A285707(n) = if(1==n,n,gcd(A079277(n),n));
-
Python
from sympy import divisors, gcd from sympy.ntheory.factor_ import core def a007947(n): return max(i for i in divisors(n) if core(i) == i) def a079277(n): k=n - 1 while True: if a007947(k*n) == a007947(n): return k else: k-=1 def a(n): return 1 if n==1 else gcd(n, a079277(n)) print([a(n) for n in range(1, 151)]) # Indranil Ghosh, Apr 26 2017
-
Scheme
(define (A285707 n) (if (= 1 n) n (gcd n (A079277 n))))