Je ne vais pas reprendre encore une fois la fameuse phrase attribuée à Jamie Zawinsky, mais vous voyez l'idée.

Dans le problème 26, on doit trouver le plus long cycle dans l'écriture décimale de 1/n.

Et ça, c'est typiquement un boulot pour une expression régulière.

Pour ça, j'ai donc dégainé mon testeur d'expressions régulières Java préféré, j'ai forgé mon expression régulière (vous avez vu comme ça s'écrit bien en groovy une expression régulière ?)

Et pouf :

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

Bon, au passage, vous remarquerez l'appel à Map#max(Closure) qui est super méga cool et le for louche.

Le tout pour un temps d'exécution de ... de ... de 14.523 s

Court, hein !