|
|
A160256
|
|
a(1)=1, a(2)=2. For n >=3, a(n) = the smallest positive integer not occurring earlier in the sequence such that a(n)*a(n-1)/a(n-2) is an integer.
|
|
8
|
|
|
1, 2, 3, 4, 6, 8, 9, 16, 18, 24, 12, 10, 30, 5, 36, 15, 48, 20, 60, 7, 120, 14, 180, 21, 240, 28, 300, 35, 360, 42, 420, 11, 840, 22, 1260, 33, 1680, 44, 2100, 55, 2520, 66, 2940, 77, 3360, 88, 3780, 110, 378, 165, 126, 220, 63, 440, 189, 880, 567, 1760
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
COMMENTS
|
Is this sequence a permutation of the positive integers?
After computing about 10^7 elements of A160256 we have
a(10000000) = 2099597439752627193722111679586865799879114417
a(10000001) = 992131130100042530286371815859160
Largest element so far:
a(8968546) = 24941014474345046106920043019655502800839523254002490663461\
524119982890708516899294655028121578883343551450916846444559467340663409\
549447588184641816
Still missing:
19, 23, 27, 29, 31, 32, 37, 38, 41, 43, 45, 46, 47, 53, 54, 57, 58, 59,
61, 62, 64, 67, 69, 71, 72, 73, 74, 76, 79, 81, 82, 83, 86, 87, 89, 90,
92, 93, 94, 95, 96, 97, 101, 103, 105, 106, 107, 108, 109, 111, 112, 113,
114, 115, 116, 118, 122, 123, 124, 125, 127, 128, 129, 131, 133, 134, ...
Primes in sequence so far:
2, 3, 5, 7, 11, 13, 17
The sequence consists of two subsequences, even (=red) and odd (=blue), see plot. (End)
a(n) is the least multiple of a(n-2)/gcd(a(n-1),a(n-2)) that has not previously occurred. - Thomas Ordowski, Jul 15 2015
|
|
LINKS
|
|
|
MAPLE
|
b:= proc(n) option remember; false end:
a:= proc(n) option remember; local k, m;
if n<3 then b(n):=true; n
else m:= denom(a(n-1)/a(n-2));
for k from m by m while b(k) do od;
b(k):= true; k
fi
end:
|
|
MATHEMATICA
|
f[s_List] := Block[{k = 1, m = Denominator[ s[[ -1]]/s[[ -2]]]}, While[ MemberQ[s, k*m] || Mod[k*m*s[[ -1]], s[[ -2]]] != 0, k++ ]; Append[s, k*m]]; Nest[f, {1, 2}, 56] (* Robert G. Wilson v, May 17 2009 *)
|
|
PROG
|
(PARI)
LQ(nMax)={my(a1=1, a2=1, L=1/*least unseen number*/, S=[]/*used numbers above L*/);
while(1, /*cleanup*/ while( setsearch(S, L), S=setminus(S, Set(L)); L++);
/*search*/ for(a=L, nMax, a*a2%a1 & next; setsearch(S, a) & next;
print1(a", "); a1=a2; S=setunion(S, Set(a2=a)); next(2)); return(L))} \\ M. F. Hasler, May 06 2009
(PARI) L=10^4; a=vector(L); b=[1, 2]; a[1]=1; a[2]=2; sb=2; P2=2; pending=[]; sp=0; for(n=3, L, if(issquare(n), b=vecsort(concat(b, pending)); sb=n-1; while(sb>=2*P2, P2*=2); sp=0; pending=[]); c=a[n-2]/gcd(a[n-2], a[n-1]); u=0; while(1, u+=c; found=0; s=0; pow2=P2; while(pow2, s2=s+pow2; if((s2<=sb)&&(b[s2]<=u), s=s2); pow2\=2); if((s>0)&&(b[s]==u), found=1, for(i=1, sp, if(pending[i]==u, found=1; break))); if(found==0, break)); a[n]=u; pending=concat(pending, u); sp++); a \\ Robert Gerbicz, May 16 2009]
(Haskell)
import Data.List (delete)
a160256 n = a160256_list !! (n-1)
a160256_list = 1 : 2 : f 1 2 [3..] where
f u v ws = g ws where
g (x:xs) | mod (x * v) u == 0 = x : f v x (delete x ws)
| otherwise = g xs
(Python)
from __future__ import division
from fractions import gcd
A160256_list, l1, l2, m, b = [1, 2], 2, 1, 1, {1, 2}
for _ in range(10**3):
....i = m
....while True:
........if not i in b:
............l1, l2, m = i, l1, l1//gcd(l1, i)
............b.add(i)
............break
|
|
CROSSREFS
|
|
|
KEYWORD
|
|
|
AUTHOR
|
|
|
EXTENSIONS
|
|
|
STATUS
|
approved
|
|
|
|