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.

A203565 Numbers that contain the product of any two adjacent digits as a substring.

Original entry on oeis.org

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 30, 31, 40, 41, 50, 51, 60, 61, 70, 71, 80, 81, 90, 91, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 126, 130, 131, 140, 141, 150, 151
Offset: 1

Views

Author

M. F. Hasler, Jan 03 2012

Keywords

Comments

Inspired by the problem restricted to pandigital numbers suggested by E. Angelini (cf. link).
E. Angelini observes that up to a(86) this is the same as "Numbers that contain the product of (all) their digits as a substring" (cf. A227510 for the zeroless terms); then 212 is here but not there, and 236 is there and not here. - M. F. Hasler, Oct 14 2014

Examples

			Any number having no two adjacent digits larger than 1 is trivially in the sequence.
The smallest nontrivial example is the number 126, which is in the sequence since 1*2=2 and 2*6=12 are both substrings of "126".
		

Crossrefs

Cf. A203569 (digits are permutations of 0...n).
Cf. A227510 (product of all digits is a substring and > 0).

Programs

  • Maple
    filter:= proc(n)
    local L,S,i;
    S:= convert(n,string);
    for i from 1 to length(S)-1 do
      if StringTools:-Search(convert(parse(cat(S[i],"*",S[i+1])),string),S) = 0 then
          return false
      fi
    od:
    true
    end proc:
    select(filter, [$0..1000]); # Robert Israel, Oct 15 2014
  • Mathematica
    d[n_] := IntegerDigits[n]; Select[Range[0, 151], And @@ Table[MemberQ[FromDigits /@ Partition[d[#], IntegerLength[k], 1], k], {k, Times @@@ Partition[d[#], 2, 1]}] &] (* Jayanta Basu, Aug 10 2013 *)
  • PARI
    has(n,m)={ my(p=10^#Str(m)); until( m>n\=10, n%p==m & return(1))}
    is_A203565(n)={ my(d); for(i=2,#d=eval(Vec(Str(n))), has(n,d[i]*d[i-1]) | return);1 }
    is_A203565(n)={ my(d=Vecsmall(Str(n))); for(i=2,#d, d[i]<50 & i++ & next; has(n,d[i-1]%48*(d[i]-48)) | return);1 } /* twice as fast */
    for( n=0,999, is_A203565(n) & print1(n","))