digits =: 10&#.^:_1 pandigital =: (1+i.9) -: /:~ validProd =: dyad define"0 prod =. x*y prod*pandigital ;digits each x,y,prod ) limit =: 2000 NB. Limit set to 2000 by experiment :) problem32 =: +/~.,validProd/~1+i.limit