Tag - dynamic programming problems and solutions