Problems that solve smaller copies of themselves.
A function that calls itself — and the pile of calls that piles up.
Guess, explore, and when it dead-ends — put it back exactly as it was.