|
|
A157899
|
|
a(n) is the smallest number whose name in US English contains n consonants.
|
|
1
|
|
|
1, 2, 3, 12, 13, 22, 23, 102, 103, 112, 113, 122, 123, 223, 323, 1112, 1113, 1122, 1123, 1223, 1323, 2323, 3323, 12323, 13323, 22323, 23323, 102323, 103323, 112323, 113323, 122323, 123323, 223323, 323323, 1113323, 1122323, 1123323, 1223323, 1323323, 2323323, 3323323
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
COMMENTS
|
In US English, "102" is written as "one hundred two".
Vowels are {a, e, i, o, u, y} here. If y is a consonant, then a(5)..a(7) = 21, 22, 23 are the first of subsequent differences. - Michael S. Branicky, Jan 29 2022
|
|
LINKS
|
|
|
EXAMPLE
|
"oNe" has 1 consonant, "TWo" has 2, "THRee" has 3, "TWeLVe" has 4, "THiRTeeN" has 5, "TWeNTyTWo" has 6, "TWeNTyTHRee" has 7, "oNe HuNDReD TWo" has 8, "oNe HuNDReD THRee" has 9, "oNe HuNDReD TWeLVe" has 10.
|
|
PROG
|
(Python) # see linked program for going to large numbers
from num2words import num2words
def consonants(n):
w = num2words(n).replace(" and", "")
return sum(1 for c in w if c in "bcdfghjklmnpqrstvwxz")
def aupton(nn):
k, adict, alst = 1, {}, []
while len(alst) < nn:
c = consonants(k)
if c not in adict:
adict[c] = k
alst = []
for i in range(1, max(adict)+1):
if i not in adict:
break
alst.append(adict[i])
k += 1
return alst
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn,word
|
|
AUTHOR
|
|
|
EXTENSIONS
|
|
|
STATUS
|
approved
|
|
|
|