New Monte Carlo method for the self-avoiding walk