login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A358787
a(1)=1; let x=gcd(a(n-1),n); for n > 1, a(n) = a(n-1) + n if x=1 or a(n-1)/x=1, otherwise a(n) = a(n-1)/x.
1
1, 3, 6, 3, 8, 4, 11, 19, 28, 14, 25, 37, 50, 25, 5, 21, 38, 19, 38, 19, 40, 20, 43, 67, 92, 46, 73, 101, 130, 13, 44, 11, 44, 22, 57, 19, 56, 28, 67, 107, 148, 74, 117, 161, 206, 103, 150, 25, 74, 37, 88, 22, 75, 25, 5, 61, 118, 59, 118, 59, 120, 60, 20, 5, 70, 35, 102, 3, 72, 36
OFFSET
1,2
LINKS
Michael De Vlieger, Log log scatterplot of a(n), n = 1..2^20.
Michael De Vlieger, Log log scatterplot of a(n), n = 1..2^16, with x = gcd(a(n-1), n), showing x=1 or a(n-1)/x = 1 in red, else dark blue.
EXAMPLE
For n=2, gcd(2,1)=1 so a(2) = 2+1 = 3.
For n=3, gcd(3,3)=3=a(2) so a(3) = 3+3 = 6.
For n=4, gcd(4,6)=2 so a(4) = 6/2 = 3.
MATHEMATICA
nn = 2^16; a[1] = 1; Do[g = GCD[a[n - 1], n]; If[Or[g == 1, Set[k, a[n - 1]/g] == 1], a[n] = a[n - 1] + n, a[n] = k], {n, 2, nn}]; Array[a, nn] (* Michael De Vlieger, Dec 13 2022 *)
PROG
(Python)
from math import gcd
from itertools import count, islice
def agen(): # generator of terms
an = 1
for n in count(2):
yield an
x = gcd(an, n)
an = an + n if x == 1 or x == an else an//x
print(list(islice(agen(), 70))) # Michael S. Branicky, Dec 15 2022
KEYWORD
nonn
AUTHOR
Gary Yane, Nov 30 2022
STATUS
approved