How much money should be deposited each year for 30 years at 3% to accumulate $1000,000?

I find that an EXCEL spreadsheet is very helpful for these kinds of problems.

If one deposits an amount P, growing for 30 years, the amount will grow to P*(1.03)^30. You want to solve for P such that:
P*1.03^30 + P*1.03^29 + ... P*1.03^1 = 1,000,000. Factor out the P, use EXCEL to calculate the sumation series, divide the 1M by the sumation and tada, you have your answer.