A349493 a(1)=1, a(2)=2; for n > 2, a(n) is the smallest unused positive number such that gcd(a(n-2)+a(n-1), a(n)) > 1 while gcd(a(n-2), a(n)) = 1 and gcd(a(n-1), a(n)) = 1.
1, 2, 3, 5, 4, 9, 13, 8, 7, 15, 11, 14, 25, 27, 16, 43, 59, 6, 35, 41, 12, 53, 55, 18, 73, 49, 10, 177, 17, 20, 37, 19, 21, 22, 215, 39, 28, 67, 45, 26, 71, 97, 24, 77, 101, 30, 131, 23, 32, 33, 65, 34, 57, 91, 40, 393, 433, 38, 51, 89, 44, 63, 107, 46, 75, 121, 52, 173, 69, 50, 119, 117, 58, 85
Offset: 1
Keywords
Examples
a(3) = 3 as a(1)+a(2) = 3, gcd(1,3) = 1, gcd(2,3) = 1, gcd(3,3) > 1 and 3 is unused. a(4) = 5 as a(2)+a(3) = 5, gcd(2,5) = 1, gcd(3,5) = 1, gcd(5,5) > 1 and 5 is unused. a(8) = 8 as a(6)+a(7) = 22, gcd(9,8) = 1, gcd(13,8) = 1, gcd(22,8) > 1 and 8 is unused.
Links
- Scott R. Shannon, Image of the first 100000 terms for values less than 150000. The green line is y = n.
- Scott R. Shannon, Image of the first 100000 terms.
Programs
-
Mathematica
a[1]=1; a[2]=2; a[n_]:=a[n]=(k=2;While[MemberQ[Array[a,n-1],k]||GCD[a[n-2]+a[n-1],k]<=1||GCD[a[n-2],k]!=1||GCD[a[n-1],k]!=1,k++];k); Array[a,74] (* Giorgos Kalogeropoulos, Nov 20 2021 *)
-
Python
from math import gcd terms, appears = [1, 2], {2:True} for n in range(3, 100): t = 3 while not(appears.get(t) is None and gcd(terms[-2]+terms[-1], t)>1 and gcd(terms[-2], t)==1 and gcd(terms[-1], t)==1): t += 1 appears[t] = True; terms.append(t); print(terms) #Gleb Ivanov, Nov 20 2021
Comments