How many reachable numbers are there between 1 and 1000?

following the pattern, the assumptions could be:

1->3
3->4 or 5
4->12 or 5->15
12->13 or 14 and 15->16 or 17
.
.
. and so on..
now assuming that respective stages comprises of numbers(let it be x) to which 1 and 2 was added, followed by the numbers formed after multiplying 3 to x
so,
at stage 1, numbers are:
1(x),3(3x)
at stage 2:
4,5(3x+1,3x+2);12,15[3(3x+1),3(3x+2)]
at stage 3:
13,14,16,17,39,42,48,41
and so on and so forth.
notice that at stage 1, total numbers were 2. At stage 2, total nubers were 2^2. At stage 3 total numbers were 2^3.
it is thus a simple case of geometric progression.
now we have to limit this progression till 1000.
thus, if we consider the chain of the lowest numbers, it will correspond to:
(((((3+1)*3)+1)*3)+1)*3)+1)*3)
this equals 363 and stops at stage 5.
363*3=1089, which exceeds 1000, thus all the chains cannot exceed after stage 5. That means number of assumptions= 2+ 2^2 + 2^3 + 2^4 + 2^5...which equals 62. now at stage 5, each number can be added with either 1 or 2, but cannot be multiplied further by 3.
Thus at stage 5, we will have 16 numbers to which 1 or 2 can be added. thus we have 16*2=32 more numbers.
This finally gives us a total of 32+62=94 numbers.
i know i'm not that clear but i'm sure if u practically solve the way i did it u'll get it :D
and yes...thnx for giving such a mind boggling question.