Guess and Check Problem Solving