Bonjour pseudocode et tout le monde :-)
Bon me revoilà ( oui je sais je suis tenace ;-) ) j'ai trouvé une nouvelle façon de réduire les combinaisons si une personne sympathique pouvait me le traduire en C et en JAVA cela serais très très sympathique et ensuite ensemble du moins les personnes intéressé on pourrais l'optimiser pour essayer de trouver le MINI a chaque fois car avec cet algo pour 10 6 5 je trouve 15 alors que le mini est de 14 mais je pense que les passionnées comme moi de ce genre de problèmes ensemble on résoudra ce problème l'avantage de cet algo c'est qu'il marche quelque soit le numéros et me semble assez rapide donc merci de votre aide pour le porg enC et en JAVA .
voici l'algo ( heu je suis nulle en algo donc pardon pour les puristes ;-) )
cordialement
Pour une garantie N-X/Y
-Calcul de toutes les grilles de 6 numéros pour N numéros. Par exemple si N=10, les grilles sont 1,2,3,4,5,6 - 1,2,3,4,5,7 - 1,2,3,4,5,8... jusqu'à 5,6,7,8,9,10
Calcul de toute les grille de Y numeros pour N numeros selon le même principe. par exemple si N=10 et Y=4, les grilles sont 1,2,3,4 - 1,2,3,5 - 1,2,3,6... jusqu'à 7,8,9,10
On prends la 1ère grille à 6 numéros ; donc 1,2,3,4,5,6 et on effectue un groupement des grilles à Y numéros. Le groupement consiste à supprimer de la liste des grilles à Y numéros toutes les grilles répondant aux critères X/Y. Voyons par l'exemple :
- Imaginons une garantie N-3/4
- On prend donc la grille à 6 num. 1,2,3,4,5,6
- On prend chaque grille à Y num, en commençant par la première qui est donc 1,2,3,4
- On teste : est ce que parmi les numéros de la grille à 6 num (1,2,3,4,5,6) il y a X numéros similaires (donc 3 dans l'exemple : N-3/4) dans la grille à Y num ? Si non, on garde la grille à Y num et on continue les tests avec la grille à Y num suivante. Si oui on supprime la grille à Y num de la liste des grilles à Y num.
- Une fois toutes les grilles à Y num testées, on note le nombre de grilles supprimées (notons S par exemple).
- On supprime la grille à 6 num de la liste des grilles à 6 num et on rajoute cette même grille à la liste des grilles définitive de la garantie.
- On effectue les mêmes tests avec toutes les grilles à 6 num mais sans supprimer de grilles à Y num, on note juste quelle est la grille à 6 num qui supprime le plus de grille à Y num. Optimisation : si on trouve une grille à 6 num qui supprime autant de grilles à Y num que S alors on prend cette grille à 6 num sans continuer les tests( mais je pense qu'il y a d'autres optimisations possible )
- On utilise la meilleure grille à 6 num que l'on a trouvé. On supprime donc de nouveau la grille à 6 num de la liste des grilles à 6 num et on rajoute cette même grille à la liste des grilles définitives de la garantie. On effectue également le groupement (suppression comme plus haut des grilles à Y num de la liste des grilles à Y num).
- On continue ainsi les tests jusqu'à ce qu'il ne reste aucune grille à Y num dans la liste des grilles à Y num.
bien entendu le programme devras être fait de façon a ce que nous puissions choisir N , X et Y .
merci de votre aide .
Je m'adresse au specialiste de la combinatoire ou de l'algo je sais pas tres bien .
objectif toujours lié au loto :
quel est le minimum de grille a jouer pour être sur d'avoir au moins 5 bons numéros si les 6 chiffre gagnants sont parmi ma selection :
supposons que je veux jouer les 8 chiffres suivant :
1 2 3 4 5 6 7 8 et que le jour du tirage les 6 numeros sont parmi ses 8 .
nombre de combinaisons de 6 parmi 8 =28 les voici :
1 2 3 4 5 6 -1 2 3 4 5 7 - 1 2 3 4 5 8 - 1 2 3 4 6 7 - 1 2 3 4 6 8 - 1 2 3 4 7 8
1 2 3 5 6 7 -1 2 3 5 6 8 - 1 2 3 5 7 8 - 1 2 3 6 7 8 - 1 2 4 5 6 7 - 1 2 4 5 6 8
1 2 4 5 7 8 -1 2 4 6 7 8 - 1 2 5 6 7 8 - 1 3 4 5 6 7 - 1 3 4 5 6 8 - 1 3 4 5 7 8
1 3 4 6 7 8 -1 3 5 6 7 8 - 1 4 5 6 7 8 - 2 3 4 5 6 7 -2 3 4 5 6 8 -2 3 4 5 7 8
2 3 4 6 7 8 - 2 3 5 6 7 8 -2 4 5 6 7 8 - 3 4 5 6 7 8
bon j'espere ne pas en avoir oublier .
maintenant on va creer des paires comme ceci .
chaque combinaisons est compose de 6 chiffres
1 2 3 4 5 6 on prends les paires :
A=1-2 B=3-4 c=5-6 d=7-8
et on va faire tous les arrangements ( je sais pas si cela s'appelle des arrangement donc...) des groupes de 3 paires donc .
ABC
ABD
ACD
BCD
maintenant on va mettre les chiffres corrspondant a ses paires.
ABC=1 2 3 4 5 6
ABD=1 2 3 4 7 8
ACD=1 2 5 6 7 8
BCD=3 4 5 6 7 8
et bien vous pouvez prendre n'importe laquelle des combinaisons parmi les 28 possible je suis sur a 100% qu'au moins une de mes 4 combinaisons auras au moins 5 bon numeros .
question pourquoi cela ne marche pas avec 10 11 12 25 30 ...etc...
peut etre qu'il y a un truc a changer pour les autres numeros qui a trait a la combinatoire ? ou y a t'il un probleme logique etc???
bref je ne comprends pas :-)
cordialement
Partager