SOLO-013 · Mastermind avancé
EXTRÊMESix places sans écho
Retrouver l’unique code ordonné de 6 chiffres.
Corrigé — cette page contient la réponse.
La réponse exacte
Code : 331037.
Le raisonnement
- Sépare deux contraintes pour chaque ligne : le nombre d’égalités position par position, puis le total des occurrences communes. Ce total vaut bien placés + mal placés ; on prend, pour chaque chiffre, le minimum des deux multiplicités.
- Pour réduire le travail manuel, oublie provisoirement les places. Note n₀,…,n₇ les nombres d’occurrences des huit chiffres. Leur somme vaut 6.
- La proposition 345125 impose min(n1, 1) + min(n2, 1) + min(n3, 1) + min(n4, 1) + min(n5, 2) = 2.
- La proposition 073421 impose min(n0, 1) + min(n1, 1) + min(n2, 1) + min(n3, 1) + min(n4, 1) + min(n7, 1) = 4.
- La proposition 573237 impose min(n2, 1) + min(n3, 2) + min(n5, 1) + min(n7, 2) = 3.
- La proposition 531562 impose min(n1, 1) + min(n2, 1) + min(n3, 1) + min(n5, 2) + min(n6, 1) = 2.
- Ces contraintes d’occurrences seules laissent 16 multiensemble(s). Les voici, écrits en ordre croissant : 000237 ; 001277 ; 001337 ; 001377 ; 002237 ; 011277 ; 011337 ; 011377 ; 012277 ; 012777 ; 013337 ; 013777 ; 022237 ; 024677 ; 033467 ; 034677.
- Multiensemble 000237 : après application successive des nombres de bien placés, il reste 32 → 13 → 1 → 0 arrangement(s).
- Multiensemble 001277 : après application successive des nombres de bien placés, il reste 48 → 10 → 0 → 0 arrangement(s).
- Multiensemble 001337 : après application successive des nombres de bien placés, il reste 66 → 28 → 2 → 0 arrangement(s).
- Multiensemble 001377 : après application successive des nombres de bien placés, il reste 48 → 19 → 1 → 0 arrangement(s).
- Multiensemble 002237 : après application successive des nombres de bien placés, il reste 66 → 15 → 2 → 0 arrangement(s).
- Multiensemble 011277 : après application successive des nombres de bien placés, il reste 66 → 21 → 0 → 0 arrangement(s).
- Multiensemble 011337 : après application successive des nombres de bien placés, il reste 72 → 24 → 2 → 0 arrangement(s).
- Multiensemble 011377 : après application successive des nombres de bien placés, il reste 66 → 23 → 3 → 0 arrangement(s).
- Multiensemble 012277 : après application successive des nombres de bien placés, il reste 66 → 10 → 0 → 0 arrangement(s).
- Multiensemble 012777 : après application successive des nombres de bien placés, il reste 32 → 6 → 0 → 0 arrangement(s).
- Multiensemble 013337 : après application successive des nombres de bien placés, il reste 56 → 21 → 3 → 1 arrangement(s).
- Multiensemble 013777 : après application successive des nombres de bien placés, il reste 32 → 11 → 1 → 0 arrangement(s).
- Multiensemble 022237 : après application successive des nombres de bien placés, il reste 56 → 7 → 1 → 0 arrangement(s).
- Multiensemble 024677 : après application successive des nombres de bien placés, il reste 96 → 39 → 4 → 0 arrangement(s).
- Multiensemble 033467 : après application successive des nombres de bien placés, il reste 132 → 58 → 3 → 0 arrangement(s).
- Multiensemble 034677 : après application successive des nombres de bien placés, il reste 96 → 45 → 4 → 0 arrangement(s).
- On peut donc faire deux tableaux séparés, occurrences puis places. Une seule ligne du second tableau conserve un arrangement ; c’est le code annoncé. Cette séparation évite de parcourir aveuglément tous les mots ordonnés.
- Commence avec les 262,144 mots ordonnés de longueur 6 sur 0 à 7. On ne retire pas les zéros initiaux ni les mots avec répétition.
- Indice 1, proposition 345125 : conserve exactement les configurations avec 1 égalité(s) de position et 2 occurrence(s) commune(s). Il reste 26,034 candidat(s).
- Indice 2, proposition 073421 : conserve exactement les configurations avec 0 égalité(s) de position et 4 occurrence(s) commune(s). Il reste 2,490 candidat(s).
- Indice 3, proposition 573237 : conserve exactement les configurations avec 2 égalité(s) de position et 3 occurrence(s) commune(s). Il reste 65 candidat(s).
- Indice 4, proposition 531562 : conserve exactement les configurations avec 2 égalité(s) de position et 2 occurrence(s) commune(s). Il reste 1 candidat(s).
- À l’indice 1, le candidat 000000 donnerait 0 bien placé(s) et 0 mal placé(s), au lieu de 1 et 1 : il est éliminé.
- À l’indice 2, le candidat 000015 donnerait 1 bien placé(s) et 1 mal placé(s), au lieu de 0 et 4 : il est éliminé.
- À l’indice 3, le candidat 100137 donnerait 2 bien placé(s) et 0 mal placé(s), au lieu de 2 et 1 : il est éliminé.
- Ce filtrage peut se faire sur papier en branches : fixe d’abord les occurrences possibles, affecte ensuite leurs places et coupe une branche dès qu’une ligne dépasse son nombre de bien placés ou ne peut plus atteindre son total commun. Il ne faut pas choisir un candidat seulement parce qu’il satisfait la dernière ligne.
- Contrôle final contre 345125 : 1 bien placé(s), 1 mal placé(s).
- Contrôle final contre 073421 : 0 bien placé(s), 4 mal placé(s).
- Contrôle final contre 573237 : 2 bien placé(s), 1 mal placé(s).
- Contrôle final contre 531562 : 2 bien placé(s), 0 mal placé(s).
- La vérification exhaustive reprend tous les mots possibles et compte exactement une solution. Les chiffres sont donc déterminés à toutes les places ; il ne s’agit pas seulement d’un code compatible trouvé au hasard.
Fausses pistes et erreurs
- Confondre mal placé et chiffre absent.
- Compter deux fois une occurrence du code lorsque la proposition répète un chiffre.
- Interdire les répétitions ou le zéro initial sans que les règles le demandent.
Déplier le certificat détaillé de recherche
Chaque branche est indépendante. L’arbre montre les déductions et contradictions du protocole utilisé ; ce n’est pas l’unique méthode possible.
{
"multisets_and_position_counts": [
{
"bag": "000237",
"remaining_after_position_constraints": [
32,
13,
1,
0
]
},
{
"bag": "001277",
"remaining_after_position_constraints": [
48,
10,
0,
0
]
},
{
"bag": "001337",
"remaining_after_position_constraints": [
66,
28,
2,
0
]
},
{
"bag": "001377",
"remaining_after_position_constraints": [
48,
19,
1,
0
]
},
{
"bag": "002237",
"remaining_after_position_constraints": [
66,
15,
2,
0
]
},
{
"bag": "011277",
"remaining_after_position_constraints": [
66,
21,
0,
0
]
},
{
"bag": "011337",
"remaining_after_position_constraints": [
72,
24,
2,
0
]
},
{
"bag": "011377",
"remaining_after_position_constraints": [
66,
23,
3,
0
]
},
{
"bag": "012277",
"remaining_after_position_constraints": [
66,
10,
0,
0
]
},
{
"bag": "012777",
"remaining_after_position_constraints": [
32,
6,
0,
0
]
},
{
"bag": "013337",
"remaining_after_position_constraints": [
56,
21,
3,
1
]
},
{
"bag": "013777",
"remaining_after_position_constraints": [
32,
11,
1,
0
]
},
{
"bag": "022237",
"remaining_after_position_constraints": [
56,
7,
1,
0
]
},
{
"bag": "024677",
"remaining_after_position_constraints": [
96,
39,
4,
0
]
},
{
"bag": "033467",
"remaining_after_position_constraints": [
132,
58,
3,
0
]
},
{
"bag": "034677",
"remaining_after_position_constraints": [
96,
45,
4,
0
]
}
]
}Comment cette réponse a été vérifiée
Énumération exhaustive de tous les codes ; calcul indépendant de chaque score ; suppression des indices redondants.
{
"candidates": 262144,
"solutions": 1,
"clues": 4,
"survivors_after_clues": [
26034,
2490,
65,
1
]
}La méthode de référence laisse 16 multiensemble(s) après résolution des contraintes de multiplicité ; il faut ensuite croiser leurs arrangements avec toutes les contraintes de position. La résolution combine équations de multiplicités plafonnées, permutations avec répétition et contraintes de position imbriquées. Le corrigé fournit le découpage complet de cette exploration. Le niveau Extrême reste une appréciation de cet effort manuel, sans calibration sur des joueurs.