%I #32 Jul 01 2022 05:33:53
%S 0,1,2,3,4,5,6,7,8,9,10,11,22,20,13,14,24,23,15,16,26,25,17,18,28,27,
%T 19,30,32,12,40,33,21,29,34,31,50,42,36,35,41,44,37,38,45,46,39,51,47,
%U 43,52,55,48,49,53,56,60,70,54,58,61,62,57,59,63,64,71,72,65,66,73,74,68,69,75
%N a(n) = smallest integer not yet in the sequence with no digits in common with a(n-2); a(0)=0, a(1)=1.
%C This is not a permutation of the nonnegative integers. E.g. 123456789 and 1023456789 (the smallest pandigital number) are not members.
%C a(n) = n for n = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 34, 84, 104, 105, 1449, 2889, 3183, ...
%H Zak Seidov, <a href="/A276512/b276512.txt">Table of n, a(n) for n = 0..5000</a>
%t s={0,1};Do[a=s[[-2]];n=2; While[MemberQ[s,n]||Intersection [IntegerDigits[a],IntegerDigits[n]]≠{}, n++];AppendTo[s,n],{100}];s
%o (Python)
%o from itertools import count, islice, product as P
%o def only(s, D=1): # numbers with >= D digits only from s
%o yield from (int("".join(p)) for d in count(D) for p in P(s, repeat=d))
%o def agen(): # generator of terms
%o aset, an1, an, minan = {0, 1}, 0, 1, 2
%o yield from [0, 1]
%o while True:
%o an1, an, s = an, minan, set(str(an1))
%o use = "".join(c for c in "0123456789" if c not in s)
%o for an in only(use, D=len(str(minan))):
%o if an not in aset: break
%o aset.add(an)
%o yield an
%o while minan in aset: minan += 1
%o print(list(islice(agen(), 75))) # _Michael S. Branicky_, Jun 30 2022
%Y Cf. A054659, A067581, A276633, A276766.
%K nonn,base
%O 0,3
%A _Zak Seidov_ and _Eric Angelini_, Sep 06 2016