Try the following approaches:
- Simplify the problem, try solving the simpler/sub problem first, see if the same technique can be applied or if we can build it up to the bigger problem, this usually implies Dp.
- Brute force approach, have a solid but probably slow solution first, then start optimizing from there.
- When the solution seems complex, don't have to come up with algo for every piece, instead, mock some algo with simply a empty function, and implement it later.