Okay, thanks 
But.. Why?
Let's have a look at what constitutes 'distinct factors'.
32 = 2^5. This number has factors 2, 4, 8, 16, 16. So a number a^n, where a is prime, has n-1 factors.
Let's now look at 2000 = 5 * 400 = 5 * 16 * 25 = 2^4 * 5^3
How do we generate the number of factors? Hopefully you can see that the number of factors it has is 18. We get to this by considering the five powers of 2 from 2^0 to 2^4 and the four powers of 5 from 5^0 to 5^3. For each power of 2, there are four possible powers of 5 you can combine with to generate new factors. Then, we subtract the two cases 1 and 2000. That gives 5 x 4 - 2 = 18.
Generalising for a1^(x1) a2^(x2) a3^(x3)...an^(xn), the number of factors would be (x1+1)(x2+2)(x3+1)(x4+1).....(xn+1) - 2.
As an example, 324 = 18^2 = (2*3^2)^2 = 2^2 * 3^4
Here n = 2, number of factors should be 3*5 - 2 = 13
Indeed, the factors of 324 are:
2, 3, 4, 6, 9, 12, 18, 27, 36, 54, 81, 108, 162, which totals 13 factors.
So to get the largest number of factors, you would ideally want to find a number that has a large number of primes as factors, but not too many as the primes get big. You need a mix of lots of primes and large powers of primes. This suggests that you raise the smaller primes to higher powers first.
Then, you're trying to maximise the product (x1+1)(x2+1)(x3+1)(x4+1)....(xn+1) subject to the constraint 2^(x1) 3^(x2) 4^(x3)....(nth prime)^(xn) < 1000
You can get a feel for how this would work by looking at the primes. Intuitively, you don't want primes past about 13 because then your powers aren't going to be too big; 13 is around 2^4 already. So you'd then play around with numbers. That's all I can think of atm.