|
MAPLE
|
isA124668 := proc(n) local digs, digs2, f, fac, b ; digs := convert(n, base, 10) ; f := ifactors(n)[2] ; for fac from 1 to nops(f) do b := op(1, op(fac, f)) ; digs := [op(digs), op(convert(b, base, 10))] ; od ; digs2 := convert(digs, set) ; if nops(digs2) = 10 and nops(digs2)=nops(digs) then print(n, f) ; RETURN(true) ; else RETURN(false) ; fi ; end : A124668aux := proc(n, dleft) local i, nnxt, dnxt ; isA124668(n) : for i from 1 to nops(dleft) do nnxt := 10*n+op(i, dleft) ; dnxt := dleft minus {op(i, dleft)} ; if nops(dnxt) > 0 then A124668aux(nnxt, dnxt) ; fi ; od ; end : dleft := {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} : for i from 1 to 9 do dnxt := dleft minus {i} ; A124668aux(i, dnxt) : od : - R. J. Mathar (mathar(AT)strw.leidenuniv.nl), Jan 13 2007
|
|
MATHEMATICA
|
Select[Range[2, 1000000], Sort[Join[IntegerDigits[ # ], Flatten[IntegerDigits[Transpose[FactorInteger[ # ]][[1]]]]]] == {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} &]
|