J'avoue, j'ai triché : j'ai été chercher une petite optimisation pour le problème 5là-basDu coup, je suis pas complètement super-fier de ma solution ultra-brute force.Néanmoins, la voilà :

[gist https://gist.github.com/379506]

Il n'y a pas là-dedans grand chose de fabuleux ou de nouveau, mis à part peut-être le joli petit range.