Add solutions for problems #17, #18, #19