login

Reminder: The OEIS is hiring a new managing editor, and the application deadline is January 26.

a(1) = 1; a(n) > a(n-1) is the smallest number whose name in English does not contain the first letter of the name of a(n-1).
1

%I #7 Dec 20 2021 19:14:13

%S 1,3,4,6,8,30,100,300,400,600,800,2000,1000000

%N a(1) = 1; a(n) > a(n-1) is the smallest number whose name in English does not contain the first letter of the name of a(n-1).

%t name[n_]:=IntegerName[n,"Words"]; a[1]=1; a[n_]:=a[n]=Module[{i=a[n-1]+1}, While[

%t StringContainsQ[name[i],StringTake[name[a[n-1]],1]], i++ ]; i]; a/@Range[12]

%o (Python)

%o from num2words import num2words

%o def n2w(n): return num2words(n).replace(" and", "")

%o def afind(limit):

%o alst, aset = [1], {1}

%o print(1, end=", ")

%o while alst[-1] < limit:

%o an = alst[-1] + 1

%o avoid = n2w(alst[-1])[0]

%o while an in aset or avoid in n2w(an): an += 1

%o alst.append(an); aset.add(an)

%o print(an, end=", ")

%o afind(100000) # _Michael S. Branicky_, Dec 20 2021

%Y Cf. A350218, A277971, A277972.

%K nonn,word,fini,full

%O 1,2

%A _Ivan N. Ianakiev_, Dec 20 2021