add new solution to problem 3