Problem 12 - a lazy (in multiple meanings of the word) solution using Racket