Add problem 21 solution
Add solution to problem 145