This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A114801 #20 Feb 16 2025 08:33:00 %S A114801 1,2,3,4,5,6,7,8,9,10,11,20,22,30,33,40,44,50,55,60,66,70,77,80,88,90, %T A114801 99,100,121,123,124,125,126,127,128,129,131,132,134,135,136,137,138, %U A114801 139,141,142,143,145,146,147,148,149,151,152,153,154,156,157,158 %N A114801 2-concatenation-free sequence starting (1,2). %C A114801 Starting with the terms (1,2) this sequence consists of minimum increasing terms such that no term is the concatenation of any two previous distinct terms. The next consecutive number skipped after 121 is 122 = Concatenate(1, 22). This is the analog of a 2-Stöhr sequence with concatenation (base 10) substituting for addition. A033627 "0-additive sequence: not the sum of any previous pair" is another name for the 2-Stöhr sequence. %H A114801 Rémy Sigrist, <a href="/A114801/b114801.txt">Table of n, a(n) for n = 1..10000</a> %H A114801 Eric Weisstein's World of Mathematics, <a href="https://mathworld.wolfram.com/StoehrSequence.html">Stöhr Sequence.</a> %H A114801 Rémy Sigrist, <a href="/A114801/a114801.gp.txt">PARI program for A114801</a> %F A114801 a(0) = 1, a(1) = 2, for n>2: a(n) = least k > a(n-1) such that k is not an element of {Concatenate(a(i), a(j))} for any distinct a(i) <= a(n-1) and a(j) <= a(n-1). %t A114801 conc[x_, y_] := FromDigits@ Flatten@ IntegerDigits[{x, y}]; L = {1, 2}; cc = {12, 21}; Do[k = 1 + Max@L; While[MemberQ[cc, k], k++]; cc = Union[cc, conc[#, k] & /@ L, conc[k, #] & /@ L]; AppendTo[L, k];, {65}]; L (* _Giovanni Resta_, Jun 15 2016 *) %o A114801 (PARI) See Links section. %o A114801 (Python) %o A114801 from itertools import count, islice %o A114801 def agen(): # generator of terms %o A114801 cats1, cats2, an, s = {"1", "2"}, {"12", "21"}, 3, "3" %o A114801 yield from [1, 2] %o A114801 while True: %o A114801 yield an %o A114801 cats2 |= {s + c for c in cats1} | {c + s for c in cats1} %o A114801 cats1.add(s) %o A114801 while (s:=str(an)) in cats1 or s in cats2: %o A114801 an += 1 %o A114801 print(list(islice(agen(), 59))) # _Michael S. Branicky_, Feb 01 2024 %Y A114801 Cf. A084383, A033627. %K A114801 base,easy,nonn %O A114801 1,2 %A A114801 _Jonathan Vos Post_, Feb 18 2006 %E A114801 Data corrected by _Giovanni Resta_, Jun 14 2016