
Envoyé par
DATA MINER
oui effectivement il y'as
10!/(5!(10-5)!)
formule mathématique pour décrire cette situation
Ce type de problème s'appelle CSP (Constraint Satisfaction Problem). Il n'y a pas d'algo générique pour les CSP.
Le plus simple est d'énumérer une à une toutes les solutions candidates et de vérifier si les contraintes sont respectées. Mais c'est potentiellement très long.
Le plus rapide c'est de construire des solutions qui respectent les contraintes. C'est ce que fait l'algo backtracking en construisant progressivement une solution, avec retour arrière si c'est impossible.
Dans ton cas, comme ton tableau initial contient beaucoup de doublons, tu peux choisir la première solution:
Construire la liste "ALL" = T1+T2+T3+...+T10
Supprimer les doublons de la liste ALL
Pour chaque sous-liste "S" à 10 élements de la liste ALL
si S respecte les 10 contraintes
afficher S
sortir du programme
fin si
fin pour
Partager