This was the first project for Declarative Programming at The University of Melbourne Semester 2 2018. It was probably one of my favourite assignments; working with Haskell ended up being really intellectually stimulating and interesting.
Also, take a look at the helper program which was used to iterate through all possible cases and calculate an average score for the program.
I ended up with a fairly high score, so this repo, along with Puzzle Solver (the second project for this course) are a pretty good indicator of what's expected.