login
Numbers whose digit string can be partitioned into three nonempty parts such that the product of the first two parts equals the third part.
4

%I #28 Jan 10 2017 07:18:18

%S 111,122,133,144,155,166,177,188,199,212,224,236,248,313,326,339,414,

%T 428,515,616,717,818,919,2510,2612,2714,2816,2918,3412,3515,3618,3721,

%U 3824,3927,4312,4416,4520,4624,4728,4832,4936,5210,5315,5420,5525,5630,5735

%N Numbers whose digit string can be partitioned into three nonempty parts such that the product of the first two parts equals the third part.

%C Could be called "area numbers" since if the first set of digits is the length, and the second set of digits is the width, then the last set of digits is the area, with length * width = area.

%e 236 is in the sequence since 2*3=6. 3515 is in the sequence since 3*5=15. Leading zeros are not allowed, thus 2036 (2*03=6) is not included.

%p read("transforms") : # implements digcatL

%p isA280635 := proc(n)

%p local dgs,spl1,spl2,dgs1,dgs2,dgs3;

%p dgs := convert(n,base,10) ;

%p if nops(dgs) >= 3 then

%p for spl1 from 1 to nops(dgs)-2 do

%p for spl2 from spl1+1 to nops(dgs)-1 do

%p if op(-1,dgs) <> 0 and op(spl1,dgs) <> 0 and op(spl2,dgs) <> 0 then

%p dgs1 := ListTools[Reverse]([op(spl2+1..nops(dgs),dgs)]) ;

%p dgs2 := ListTools[Reverse]([op(spl1+1..spl2,dgs)]) ;

%p dgs3 := ListTools[Reverse]([op(1..spl1,dgs)]) ;

%p if digcatL(dgs1)*digcatL(dgs2) = digcatL(dgs3) then

%p return true;

%p end if

%p end if;

%p end do:

%p end do:

%p false ;

%p else

%p false;

%p end if;

%p end proc:

%p for n from 100 do

%p if isA280635(n) then

%p printf("%d,\n",n) ;

%p end if;

%p end do: # _R. J. Mathar_, Jan 10 2017

%t With[{nn = 1}, Union@ Flatten@ Table[FromDigits@ Flatten@ Map[IntegerDigits, {n, k, n k}], {n, 10^nn - 1}, {k, 10^nn - 1}]] (* _Michael De Vlieger_, Jan 07 2017 *)

%Y Cf. A088294, A280636.

%K nonn,base

%O 1,1

%A _Randy L. Ekl_, Jan 06 2017