Ton algo fonctionne, mais ça ne détecte pas les permutations. Le problème c'est qu'il peut s'agir de deux blocs identiques de 10 caractères, dans une chaine qui en ferait 10000, et qui serait au tout début de la 1ere mais à la fin de la seconde; ton algo ne fait qu' "avancer" dans la chaine, et ne pourrait pas donc trouver 2 blocs communs aux deux chaines, qui soient l'un avant l'autre dans la 1ere chaine, et dans l'ordre inverse dans la 2eme. Bien sûr c'est cette partie qui risque de défoncer les perfs de l'algo, le reste étant traitable avec quelque chose proche de ta méthode de façon finalement assez rapide (à condition de fixer des poids égaux pour toutes les pénalités)
