Domanda di colloquio di Microsoft

HackerRank Medium question. Solved it with backtracking and memoization.