|
|
A134941
|
|
Mountain numbers.
|
|
25
|
|
|
1, 121, 131, 141, 151, 161, 171, 181, 191, 1231, 1241, 1251, 1261, 1271, 1281, 1291, 1321, 1341, 1351, 1361, 1371, 1381, 1391, 1421, 1431, 1451, 1461, 1471, 1481, 1491, 1521, 1531, 1541, 1561, 1571, 1581, 1591, 1621, 1631, 1641, 1651, 1671, 1681, 1691, 1721
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
COMMENTS
|
For n > 1 the structure of digits represents a mountain. The first digit is 1. The last digit is 1. The first digits are in increasing order. The last digits are in decreasing order. The numbers only have one largest digit. This sequence is finite. The last term is 12345678987654321.
A178333 is the characteristic function of mountain numbers: A178333(a(n)) = 1;
A178334(n) is the number of mountain numbers <= n;
A178052 and A178053 give sums of digits and digital roots of mountain numbers;
A178051(n) is the peak value of the n-th mountain number. (End)
|
|
LINKS
|
|
|
EXAMPLE
|
The A-number of this sequence (A134941) is itself a mountain number:
. . . 9 . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . 4 . 4 .
. 3 . . . .
. . . . . .
1 . . . . 1
|
|
MATHEMATICA
|
mountainQ[n_] := MatchQ[ IntegerDigits[n], {1, a___, b_, c___, 1} /; OrderedQ[{1, a, b}, Less] && OrderedQ[ Reverse[{b, c, 1}], Less]]; mountainQ[1] = True; Select[Range[2000], mountainQ] (* Jean-François Alcover, Jun 13 2012 *)
Prepend[Union @@ ((FromDigits@#&/@Flatten[Table[Join[(k=Prepend[#, 1]&/@
Subsets[Range[2, #-1]])[[i]], {#}, (Reverse@# & /@k)[[j]]],
{i, 2^(# - 2)}, {j, 2^(# - 2)}], 1])&/@Range[9]), 1] (* Hans Rudolf Widmer, Apr 30 2024 *)
|
|
PROG
|
(Haskell)
import Data.List (elemIndices)
a134941 n = a134941_list !! (n-1)
a134941_list = elemIndices 1 a178333_list
(Python)
from itertools import product
def ups():
d = "23456789"
for b in product([0, 1], repeat=8):
yield "1" + "".join(d[i]*b[i] for i in range(8))
def downsfrom(apex):
if apex < 3: yield "1"*int(apex==2); return
d = "8765432"[-(apex-2):]
for b in product([0, 1], repeat=len(d)):
yield "".join(d[i]*b[i] for i in range(len(d))) + "1"
def A134941(): # return full sequence as a list
mountain_strs = (u+d for u in ups() for d in downsfrom(int(u[-1])))
return sorted(int(ms) for ms in mountain_strs)
|
|
CROSSREFS
|
|
|
KEYWORD
|
base,fini,full,nonn
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|