cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A367735 Prime numbers wherein digit values increase, decrease, and finally increase.

Original entry on oeis.org

1201, 1213, 1217, 1301, 1303, 1307, 1319, 1327, 1409, 1423, 1427, 1429, 1439, 1523, 1549, 1601, 1607, 1609, 1613, 1619, 1627, 1637, 1657, 1709, 1723, 1747, 1759, 1801, 1823, 1847, 1867, 1879, 1901, 1907, 1913, 1949, 1979, 2309, 2417, 2423, 2437, 2503, 2539
Offset: 1

Views

Author

James S. DeArmon, Jan 24 2024

Keywords

Comments

Terms must have at least 4 digits.
There are 3287310 terms, with the last being 1245678987653210123456789. - Michael S. Branicky, Jan 26 2024

Examples

			The first term is 1201: increases 1-2, decreases 2-0, then increases 0-1.  An example 7-digit term is 1215679.
		

Crossrefs

Programs

  • Maple
    q:= proc(n) local i, l, s;
          l, s:= convert(n, base, 10), 1;
          for i to nops(l)-1 while s<5 do s:=
           `if`(l[i]=l[i+1], 5,
           `if`(l[i]>l[i+1], [2$2, 4$2][s], [5, 3$2, 5][s]))
          od; is(s=4)
        end:
    select(isprime and q, [$1..15000])[];  # Alois P. Heinz, Jan 26 2024
  • Python
    from sympy import isprime
    from itertools import combinations, islice
    def agen(): # generator of terms
        for d in range(4, 28):
            print(d)
            passed = set()
            for d1 in range(2, min(d-2, 9)+1):
                for c1 in combinations("123456789", d1):
                    for d2 in range(1, min(d-d1-1, 10)+1):
                        digits2 = list(map(str, range(int(c1[-1])-1, -1, -1)))
                        for c2 in combinations(digits2, d2):
                            digits3 = list(map(str, range(int(c2[-1])+1, 11)))
                            for c3 in combinations(digits3, d - d1 - d2):
                                t = int("".join(c1 + c2 + c3))
                                if isprime(t):
                                    passed.add(t)
            yield from sorted(passed)
    print(list(islice(agen(), 63))) # Michael S. Branicky, Jan 26 2024