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.

A381242 Lexicographically earliest sequence of distinct terms > 1 such that no term is a substring of the product of any two terms.

This page as a plain text file.
%I A381242 #16 Mar 26 2025 21:47:33
%S A381242 2,3,20,22,28,30,200,202,220,248,280,300,2000,2002,2020,2022,2200,
%T A381242 2480,2800,3000,3252,3272,20000,20002,20020,20022,20200,20220,22000,
%U A381242 23252,24800,28000,30000,32520,32720,200000,200002,200020,200022,200200,200202,200220
%N A381242 Lexicographically earliest sequence of distinct terms > 1 such that no term is a substring of the product of any two terms.
%C A381242 The "two terms" mentioned in the name are not necessarily distinct, so no term is the substring of the square of any term.
%C A381242 It can be shown that the digits 1 and 6 never appear, and that all terms start with either a 2 or a 3.
%C A381242 If k is in the sequence, then so is 10*k.
%C A381242 Conjecture: The digit 9 never appears.
%e A381242 For calculating a(3):
%e A381242 If 4 was in the sequence, 3*4 = 12 would have 2 as a substring, so it is disallowed.
%e A381242 If 5 was in the sequence, 3*5 = 15 would have 5, itself, as a substring, so it is disallowed.
%e A381242 The first term that is allowed is 20, since 20 is the first term not to have 2, 3, or itself as a substring of any of the following: 2*20 = 40, 3*20 = 60, 20*20 = 400.
%e A381242 So, a(3) = 20.
%o A381242 (Python)
%o A381242 a = [2]
%o A381242 while len(a) < 20:
%o A381242     a.append(a[-1]+1)
%o A381242     while any(any(str(k) in str(a[i]*a[j]) for k in a) for i in range(len(a)) for j in range(i,len(a))): a[-1] += 1
%o A381242 print(a)
%o A381242 (Python)
%o A381242 from itertools import count, islice
%o A381242 def agen():    # generator of terms
%o A381242     slst, alst, an = [], [], 2
%o A381242     S = {"4"}  # strings of products of two terms (including self products)
%o A381242     while True:
%o A381242         alst.append(an)
%o A381242         slst.append(str(an))
%o A381242         yield an
%o A381242         for k in count(an+1):
%o A381242             sk = str(k)
%o A381242             if any(sk in s for s in S): continue
%o A381242             Pk = [str(ai*k) for ai in alst] + [str(k*k)]
%o A381242             if any(si in s for s in Pk for si in slst+[sk]): continue
%o A381242             an = k
%o A381242             S |= set(Pk)
%o A381242             break
%o A381242 print(list(islice(agen(), 42))) # _Michael S. Branicky_, Mar 26 2025
%Y A381242 Cf. A382453
%K A381242 nonn,base
%O A381242 1,1
%A A381242 _Dominic McCarty_, Mar 24 2025