Applied Combinatorics With Problem Solving