Bonjour,
Connaissant les règles suivantes:
- double mixte
- 5 parties à disputées
- un homme ne peut jouer qu´une seule fois avec la même partenaire
- un couple ne peut rencontrer et jouer qu´une seule fois contre le(s) même(s) adversaire(s)
je cherche à effectuer un tirage au sort pour l´organisation d´un double mixte. J´ai réussi en passant par la génération d´un tableau ou j´élimine les tuples (paires/paires et impaires/impaires).
voyez-vous de l´optimisation avant que je poursuive?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 NomFemme = ["Susanne","Isabelle","Annaig","Jaqueline","Svenja","Heide","Sabine","Carola","Soazic","Nolwenn","Birgit"] NomHomme = ["Frank N.","Stephane","Thomas","Jochen","Frank S.","Bernd","Paul","Marcel","Marcus","Alexander"] nbjoueur=len(NomFemme)+len(NomHomme) from itertools import combinations A=list(combinations(list(range(1,nbjoueur)),2)) lenA=len(A)-1 while lenA!=-1: B=list(A[lenA]) if B[0]%2 != 0 and B[1]%2 != 0: del A[lenA] if B[0]%2 == 0 and B[1]%2 == 0: del A[lenA] lenA-=1 print("Liste des couples:",A) print("Nombre de couples",len(A))
Cordialement,
Partager