L'algorithme suggéré par mont29 est O(n**3). Il est possible de l'optimiser en O(n**2) mais il y a mieux: il y a une solution en temps linéaire.

Cela passe par la résolution d'un problème un peu...