Solving Dynamic Problems