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.

Showing 1-3 of 3 results.

A323286 Choix de Bruxelles (version 1): irregular table read by rows in which row n lists all the legal numbers that can be reached by halving or doubling some substring of the decimal expansion of n.

Original entry on oeis.org

2, 1, 4, 6, 2, 8, 10, 3, 12, 14, 4, 16, 18, 5, 20, 12, 21, 22, 6, 11, 14, 22, 24, 16, 23, 26, 7, 12, 18, 24, 28, 25, 30, 110, 8, 13, 26, 32, 112, 27, 34, 114, 9, 14, 28, 36, 116, 29, 38, 118, 10, 40, 11, 22, 41, 42, 11, 12, 21, 24, 42, 44, 13, 26, 43, 46, 12
Offset: 1

Views

Author

N. J. A. Sloane, Jan 14 2019

Keywords

Comments

Take the decimal expansion of n, say n = d_1 d_2 ... d_k. We can choose to map it to any number that can be obtained by the following process. Take any substring d_i, d_{i+1}..., d_j that does not begin with 0. If the number represented by this substring is odd, replace it with twice the number. If it is even either halve it or double it.
The substring may increase or decrease in length. We do not pad it with zeros if it decreases in length.
For example, if n = 20129, then by acting on single-digit substrings we get 10129, 40129, 20229, 20119, 20149, 201218. Acting on 2-digit substrings we get in addition 2069 (halve the 12!), 20249, 20158. From 3-digit substrings we also get 40229, 20258; from 4-digit substrings we get 40249; and from 5-digit substrings we get 40258.
Eric Angelini asks what is the smallest number of steps needed to reach n if we start at 1 and repeatedly apply this process? We can reach 2 in 1 step, 4 in 2 steps, 13 in five steps, and so on.
Lars Blomberg has shown, by considering just the final digit of the numbers in the trajectory, that no number ending in 0 or 5 can be reached from 1. All other numbers can be reached (cf. A323454) - see proof below.
Update, Jan 15 2019: Lorenzo Angelini has found that 3 can be reached from 1 in 11 steps: 1, 2, 4, 8, 16, 112, 56, 28, 14, 12, 6, 3. No shorter path is possible.
From N. J. A. Sloane, Jan 16 2019: (Start)
Theorem: If k > 1 does not end in 0 or 5 then it can be reached from 1.
Proof: Suppose not, and let k be the smallest such number. Note that the allowed operations are invertible: if a -> b then also b -> a. So that means that
*** all the descendants of k must be bigger than k ***
(if there was a descendant < k, then it would also be unreachable from 1, which is a contradiction to k being the smallest).
All digits of k must be odd (if there were an even digit > 0, halve it and get a smaller number; if there is a zero digit, say we see a0, then we halve a0 and get a smaller number).
If all the digits of k are 1, do 111...1 -> 111...2 -> 55..56, a smaller number.
If there is a digit 3, 7, or 9, we know we can get that single digit down to 1 (see A323454), again a contradiction.
But all the digits can't be 5. QED (End)

Examples

			The triangle begins:
   2;
   1,   4;
   6;
   2,   8;
  10;
   3,  12;
  14;
   4,  16;
  18;
   5,  20;
  12,  21,  22;
   6,  11,  14,  22,  24;
  16,  23,  26;
   7,  12,  18,  24,  28;
  25,  30, 110;
   8,  13,  26,  32, 112;
  27,  34, 114;
   9,  14,  28,  36, 116;
  29,  38, 118;
  10,  40;
  11,  22,  41,  42;
  11,  12,  21,  24,  42,  44;
  ...
		

References

  • Eric Angelini, Email to N. J. A. Sloane, Jan 14 2019.

Crossrefs

The number of terms in row n is given by A323287.
See A323460 for the (preferred) version 2 where n can also be mapped to itself.
See also A323288 (row maxima), A323289, A323452, A323453, A323454, A323455 (a binary analog).
For variants of the Choix de Bruxelles operation, see A337321 and A337357.

Programs

  • PARI
    See Sigrist link.
    
  • Python
    def cdb(n):
        s, out = str(n), set()
        for l in range(1, len(s)+1):
            for i in range(len(s)+1-l):
                if s[i] == '0': continue
                t = int(s[i:i+l])
                out.add(int(s[:i] + str(2*t) + s[i+l:]))
                if t&1 == 0: out.add(int(s[:i] + str(t//2) + s[i+l:]))
        return sorted(out)
    print([c for n in range(1, 25) for c in cdb(n)]) # Michael S. Branicky, Jul 24 2022

Extensions

Data corrected by Rémy Sigrist, Jan 15 2019

A323460 Choix de Bruxelles, version 2: irregular table read by rows in which row n lists all the legal numbers that can be reached by halving or doubling some substring of the decimal expansion of n (including the empty string).

Original entry on oeis.org

1, 2, 1, 2, 4, 3, 6, 2, 4, 8, 5, 10, 3, 6, 12, 7, 14, 4, 8, 16, 9, 18, 5, 10, 20, 11, 12, 21, 22, 6, 11, 12, 14, 22, 24, 13, 16, 23, 26, 7, 12, 14, 18, 24, 28, 15, 25, 30, 110, 8, 13, 16, 26, 32, 112, 17, 27, 34, 114, 9, 14, 18, 28, 36, 116, 19, 29, 38
Offset: 1

Views

Author

N. J. A. Sloane, Jan 22 2019

Keywords

Comments

The differs from the first version (in A323286) in that now n can be reached from n (by using the empty string).
This slight modification of the definition makes the analysis simpler.
The number of numbers that can be reached from n in one step is A323287(n)+1.
The minimal number of steps to reach n starting at 1 is still given by A323454.

Examples

			Rows 1 through 20 are:
1, 2,
1, 2, 4,
3, 6,
2, 4, 8,
5, 10,
3, 6, 12,
7, 14,
4, 8, 16,
9, 18,
5, 10, 20,
11, 12, 21, 22,
6, 11, 12, 14, 22, 24,
13, 16, 23, 26,
7, 12, 14, 18, 24, 28,
15, 25, 30, 110,
8, 13, 16, 26, 32, 112,
17, 27, 34, 114,
9, 14, 18, 28, 36, 116,
19, 29, 38, 118,
10, 20, 40
		

Crossrefs

Programs

  • Python
    def cdb2(n):
        s, out = str(n), {n}
        for l in range(1, len(s)+1):
            for i in range(len(s)+1-l):
                if s[i] == '0': continue
                t = int(s[i:i+l])
                out.add(int(s[:i] + str(2*t) + s[i+l:]))
                if t&1 == 0: out.add(int(s[:i] + str(t//2) + s[i+l:]))
        return sorted(out)
    print([c for n in range(1, 21) for c in cdb2(n)]) # Michael S. Branicky, Jul 24 2022

A323289 Total number of distinct numbers that can be obtained by starting with 1 and applying the "Choix de Bruxelles", version 2 (A323460) operation at most n times.

Original entry on oeis.org

1, 2, 3, 4, 5, 9, 24, 59, 136, 362, 1365, 5992, 28187, 135951, 689058, 3908456, 24849118, 171022869, 1248075797
Offset: 0

Views

Author

N. J. A. Sloane, Jan 15 2019

Keywords

Comments

Equally, this is the total number of distinct numbers that can be obtained by starting with 1 and applying the "Choix de Bruxelles", version 1 (A323286) operation at most n times.

Examples

			After applying Choix de Bruxelles (version 1) twice to 1, we have seen the numbers {1,2,4}, so a(2)=3. After 5 applications, we have seen {1,2,4,8,16,13,26,32,112}, so a(5) = 9.
		

Crossrefs

Cf. A323286, A323287, A323452 (first differences), A323453, A323460.

Programs

  • Python
    from itertools import islice
    def cdb2(n):
        s, out = str(n), {n}
        for l in range(1, len(s)+1):
            for i in range(len(s)+1-l):
                if s[i] == '0': continue
                t = int(s[i:i+l])
                out.add(int(s[:i] + str(2*t) + s[i+l:]))
                if t&1 == 0: out.add(int(s[:i] + str(t//2) + s[i+l:]))
        return out
    def agen():
        reach, expand = {1}, [1]
        while True:
            yield len(reach)
            newreach = {r for q in expand for r in cdb2(q) if r not in reach}
            reach |= newreach
            expand = list(newreach)
    print(list(islice(agen(), 15))) # Michael S. Branicky, Jul 24 2022

Extensions

a(7)-a(16) from Rémy Sigrist, Jan 15 2019
Deleted an incorrect comment. - N. J. A. Sloane, Jan 24 2019
a(17) from Michael S. Branicky, Jul 24 2022
a(18) from Michael S. Branicky, Jul 26 2022
Showing 1-3 of 3 results.