Agreed. There's quite a diversity of solutions ranging from brute-force, through "computer science" optimisations, to clever mathematics. And as someone who had mainly programmed in various versions of Basic before it's been eye-opening to see a range of different languages and their strengths and weaknesses. In particular some of the solutions in J (http://www.jsoftware.com/) struck me as quite remarkable.