Challenging algorithms and data structures every programmer should try 4 years ago
Because guidance can't be given its learned. You don't have to compete.
Go on LC and try various approaches compare time-complexities and it will be obvious why you have to use a certain algorithm.