login
a(1)=1, a(2)=2, a(3)=5; thereafter a(n) is the smallest number not occurring earlier having at least one common factor with a(n-2), but none with a(n-1).
3

%I #27 Jul 26 2024 05:22:15

%S 1,2,5,4,15,8,3,10,9,14,27,7,6,35,12,25,16,45,22,21,11,18,55,24,65,28,

%T 13,20,39,32,33,26,51,38,17,19,34,57,40,63,44,49,30,77,36,91,46,105,

%U 23,42,115,48,85,52,75,56,69,50,81,58,93,29,31,87,62,99,64,111

%N a(1)=1, a(2)=2, a(3)=5; thereafter a(n) is the smallest number not occurring earlier having at least one common factor with a(n-2), but none with a(n-1).

%C A variant of A098550. See that entry for much more information.

%C It seems likely that this sequence will never merge with A098550, but it would be nice to have a proof.

%H Chai Wah Wu, <a href="/A251554/b251554.txt">Table of n, a(n) for n = 1..10000</a>

%H David L. Applegate, Hans Havermann, Bob Selcoe, Vladimir Shevelev, N. J. A. Sloane, and Reinhard Zumkeller, <a href="http://arxiv.org/abs/1501.01669">The Yellowstone Permutation</a>, arXiv preprint arXiv:1501.01669, 2015 and <a href="https://cs.uwaterloo.ca/journals/JIS/VOL18/Sloane/sloane9.html">J. Int. Seq. 18 (2015) 15.6.7</a>.

%t a251554[lst_List] :=

%t Block[{k = 3},

%t While[GCD[lst[[-2]], k] == 1 || GCD[lst[[-1]], k] > 1 ||

%t MemberQ[lst, k], k++]; Append[lst, k]]; Nest[a251554, {1, 2,

%t 5}, 120] (* _Michael De Vlieger_, Dec 23 2014, after _Robert G. Wilson v_ at A098550 *)

%o (Python)

%o from fractions import gcd

%o A251554_list, l1, l2, s, b = [1,2,5], 5, 2, 3, {5}

%o for _ in range(10**4):

%o ....i = s

%o ....while True:

%o ........if not i in b and gcd(i,l1) == 1 and gcd(i,l2) > 1:

%o ............A251554_list.append(i)

%o ............l2, l1 = l1, i

%o ............b.add(i)

%o ............while s in b:

%o ................b.remove(s)

%o ................s += 1

%o ............break

%o ........i += 1 # _Chai Wah Wu_, Dec 21 2014

%o (Haskell)

%o import Data.List (delete)

%o a251554 n = a251554_list !! (n-1)

%o a251554_list = 1 : 2 : 5 : f 2 5 (3 : 4 : [6..]) where

%o f u v ws = g ws where

%o g (x:xs) = if gcd x u > 1 && gcd x v == 1

%o then x : f v x (delete x ws) else g xs

%o -- _Reinhard Zumkeller_, Dec 26 2014

%Y Cf. A098550, A251555.

%K nonn

%O 1,2

%A _N. J. A. Sloane_, Dec 21 2014