A255003 Lexicographically earliest permutation of positive integers such that a(a(n)+a(n+1)) is even for all n.
1, 2, 4, 3, 5, 6, 8, 10, 7, 9, 12, 11, 13, 14, 15, 16, 18, 20, 17, 19, 22, 21, 24, 26, 23, 25, 28, 27, 30, 29, 32, 31, 33, 34, 35, 36, 38, 40, 37, 39, 42, 41, 44, 43, 46, 45, 47, 48, 50, 52, 49, 51, 54, 53, 56, 55, 58, 57, 60, 59, 62, 61, 64, 66, 63, 65, 68, 67, 70, 69, 72, 71, 73
Offset: 1
Keywords
Examples
Checking the definition: n = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ... S = 1, 2, 4, 3, 5, 6, 8, 10, 7, 9, 12, 11, 13, 14, 15, 16, 18, 20, 17, 19, 22, 21,... for n=1 then a(1)=1 and a(2)=2 and a(sum) reads a(1+2) reads a(3) which is 4 (even); for n=2 then a(2)=2 and a(3)=4 and a(sum) reads a(2+4) reads a(6) which is 6 (even); for n=3 then a(3)=4 and a(4)=3 and a(sum) reads a(4+3) reads a(7) which is 8 (even); for n=4 then a(4)=3 and a(5)=5 and a(sum) reads a(3+5) reads a(8) which is 10 (even); ... etc.
Links
- Alois P. Heinz, Table of n, a(n) for n = 1..20000
Programs
-
Maple
N:= 100: # to get a(n) for n <= N maxodd:= 1: maxeven:= 0: a[1]:= 1: needeven:= {}: for n from 2 to N do if member(n,needeven) or maxeven < maxodd then a[n]:= maxeven + 2; maxeven:= a[n]; else a[n]:= maxodd + 2; maxodd:= a[n]; fi; needeven:= needeven union {a[n-1]+a[n]}; od: seq(a[n],n=1..N); # Robert Israel, Mar 26 2015
-
Mathematica
M = 100; maxodd = 1; maxeven = 0; a[1] = 1; needeven = {}; For[n = 2, n <= M, n++, If[ MemberQ[needeven, n] || maxeven < maxodd, a[n] = maxeven + 2; maxeven = a[n], a[n] = maxodd + 2; maxodd = a[n]]; needeven = needeven ~Union~ {a[n-1] + a[n]}]; Array[a, M] (* Jean-François Alcover, Apr 30 2019, after Robert Israel *)
-
PARI
{a=vector(100,i,1); u=[1]/* used numbers beyond u[1] */; for(n=2,#a, if( a[n] < 0, a[n]=u[1]-u[1]%2; while(setsearch(u,a[n]+=2),), a[n]=u[1]; while(setsearch(u,a[n]++),)); u=setunion(u,[a[n]]); while( #u>1 && u[2]==u[1]+1, u=u[2..#u]); a[n]+a[n-1]>#a || a[a[n]+a[n-1]]=-1)}
Comments