OFFSET
3,4
LINKS
Eric Weisstein's World of Mathematics, Ulam Sequence.
Wikipedia, Ulam number.
EXAMPLE
From Petros Hadjicostas, Nov 20 2019: (Start)
(End)
MAPLE
# First we modify Peter Luschny's program from A002858 (with len >= 3):
UlamList := proc(len) local isUlam, nextUlam, behead; behead := u -> u[2 .. numelems(u)]; isUlam := proc(n, h, u, r) local hu, tu, hr, tr; hu := u[1]; hr := r[1]; if h = 2 then return false; end if; if hr <= hu then return evalb(h = 1); end if; if hr + hu = n then tu := behead(u); tr := behead(r); return isUlam(n, h + 1, tu, tr); end if; if hr + hu < n then tu := behead(u); return isUlam(n, h, tu, r); end if; tr := behead(r); isUlam(n, h, u, tr); end proc; nextUlam := proc(n, u, r) if isUlam(n, 0, u, r) then if nops(u) = len - 1 then return [op(u), n]; end if; nextUlam(n + 1, [op(u), n], [n, op(r)]); else nextUlam(n + 1, u, r); end if; end proc; nextUlam(3, [1, 3], [3, 1]); end proc:
# Next we create a function to calculate a(n) for given n >= 3:
a := proc(n) local u, a, i, j: u := 0: if 3 <= n then a := UlamList(n): for i to n - 2 do for j from i + 1 to n - 1 do if a[n] = a[i] + a[j] then u := min(i, j): end if: end do: end do: end if: u: end proc:
# Finally, we create a list of values for a(n):
seq(a(n), n=3..100); # Petros Hadjicostas, Nov 20 2019
CROSSREFS
KEYWORD
nonn
AUTHOR
EXTENSIONS
Name edited and typo in the data corrected by Petros Hadjicostas, Nov 20 2019
More terms from Petros Hadjicostas, Nov 20 2019
STATUS
approved