%I #49 May 11 2023 09:21:32
%S 12,21,23,31,32,34,41,42,43,45,51,52,53,54,56,61,62,63,64,65,67,71,72,
%T 73,74,75,76,78,81,82,83,84,85,86,87,89,91,92,93,94,95,96,97,98,99,
%U 101,110,111,112,121,122,123,131,132,141,142,151,152,161,162,171
%N "Early bird" numbers: write the natural numbers in a string 12345678910111213.... Sequence gives numbers that occur in the string ahead of their natural place, sorted into increasing order (cf. A117804).
%C Based on an idea by Argentinian puzzle creator Jaime Poniachik, these numbers were introduced by Martin Gardner in 2005 in the magazine Math. Horizons, published by the MAA.
%C A048992 is a similar sequence, but is different because it does not contain 21, etc. - see comments in A048992.
%C A220376(n) = position of a(n) in 1234567891011121314151617181... . - _Reinhard Zumkeller_, Dec 13 2012
%D Martin Gardner, Transcendentals and early birds, Math. Horizons, XIII(2) (2005), pp. 5, 34 (published by Math. Assoc. America).
%H Joshua Zucker and R. Zumkeller, <a href="/A116700/b116700.txt">Table of n, a(n) for n = 1..10000</a> (first 675 terms from Joshua Zucker)
%H S. W. Golomb, <a href="http://www.itsoc.org/publications/nltr/it1202.pdf">Early Bird Numbers</a>, Puzzle Column in IEEE Inform. Soc. Newsletter, 52(4) (2002), p. 10.
%H S. W. Golomb, <a href="http://www.itsoc.org/publications/nltr/it0303web.pdf">Early Bird Numbers: Solutions</a>, IEEE Inform. Soc. Newsletter, 53(1) (2003), p. 30.
%F Asymptotically, the early bird numbers have density 1 [Golomb].
%e "12" appears at the start of the string, ahead of its position after "11", so is a member.
%e So are 123, 23, 1234, 234, 34, ... and sorting these into increasing order we get 12, 21, 23, 31, ... - _N. J. A. Sloane_, Aug 28 2019
%t s = ""; Reap[For[n=1, n <= 200, n++, sn = ToString[n]; If[StringPosition[s, sn, 1] =!= {}, Sow[n]]; s = s <> sn]][[2, 1]] (* _Jean-François Alcover_, Nov 04 2016, after _Klaus Brockhaus_ *)
%o (ARIBAS) s:= ""; for n:=1 to 200 do sn:=itoa(n);
%o if substr_index(s, sn) >= 0 then write(n, ","); end;
%o s:=concat(s, sn); end; (* _Klaus Brockhaus_, Jul 23 2007 *)
%o (UBASIC)
%o 10 X=""
%o 20 for N=1 to 396
%o 30 A=cutspc(str(N))
%o 40 if instr(X,A)>0 then print N;
%o 50 X+=A
%o 60 next N
%o # _Warut Roonguthai_, Jul 23 2007
%o (Haskell)
%o import Data.List (isPrefixOf, find)
%o import Data.Maybe (fromJust)
%o a116700 n = a116700_list !! (n-1)
%o a116700_list = filter early [1 ..] where
%o early z = not (reverse (show (z - 1)) `isPrefixOf` fst bird) where
%o bird = fromJust $ find ((show z `isPrefixOf`) . snd) xys
%o xys = iterate (\(us, v : vs) -> (v : us, vs))
%o ([], concatMap show [0 ..])
%o -- _Reinhard Zumkeller_, Dec 13 2012
%o (Python)
%o def aupto(limit):
%o s, alst = "", []
%o for k in range(1, limit+1):
%o sk = str(k)
%o if sk in s: alst.append(k)
%o s += sk
%o return alst
%o print(aupto(171)) # _Michael S. Branicky_, Dec 21 2021
%Y Cf. A117804. A131881 gives complement.
%Y Cf. A048991 and A048992 (Rollman numbers).
%Y Cf. A007908 (subsequence, apart from initial 1).
%K nonn,base,nice,look
%O 1,1
%A _Bernardo Recamán_, Jul 22 2007
%E More terms from _Warut Roonguthai_ and _Klaus Brockhaus_, Jul 23 2007
%E Golomb links from _Jeremy Gardiner_, Jul 23 2007
|