The answer is indeed 1000, but to get to it you can just use the amount of zeroes in the problem. 3 * 10 = 30, so you know that wouldn't be the answer as it shows in your problem.
300 * 10 = 3000. To get this by just using your head, count how many zeroes are in both of the numbers. 2 zeroes are in 300, and 1 zero is in 10. 2 + 1 = 3 zeroes, so that means the answer has 3 zeroes. Using anything like 10, 100, 100, etc can be easily solved by using the zeroes.
The same type of logic can be used for dividing, so 30,000 is _____ times as much as 30. With 4 zeroes in 30,000, you can tell that the quotient (answer of division) is going to have 4 zeroes. From this, you can get 1000. 30 times 1000 = 30,000