Good questions to ask
Solving problems is all about asking the right questions and finding the right thing to explore. Therefore, I advise asking the following questions while solving any problem:
- What problems that I have seen before does this problem remind me of?
This is the absolute best question to ask. Think of every single relevant problem, recall the solutions of them, and try to find a similar idea in the problem you have in front of you. - What techniques does this problem feel like?
If you see "prove for all integers $n$," then think of induction. If you see a problem involving making a sequence of moves, try to find an invariant. If you see a problem that says "prove there exists" but doesn't have any structure you can see, think of the pigeonhole principle. If it asks to prove that the number of one things is equal to the number of the other, then find a bijection. If it is a game, then look at what positions are winning and losing for small values. - What tricks does this remind me of?
As you solve more and more problems, you will see tricks that appear in several problems.