Algorithme pour établir un ordre de passage
Bonjour,
Je cherche à développer sous excel un algorithme me permettant d'établir l'ordre de passage d'un concours d'équitation.
Je souhaiterai premièrement avoir un algorithme en "français".
J'ai essayé personnellement de le créer mais cependant je n'y parviens pas. En effet, les conditions pour créer cet ordre de passage sont assez complexes :
-Un cavalier peut faire jusqu'à 3 passages avec des chevaux différents ; il ne peut donc pas passer 3 fois d'affilé (sauf si il est tout seul....), puisque celui ci doit s'échauffer avec son cheval à chaque fois.
-Un cheval peut avoir jusqu'à trois cavaliers mais ne peut pas passer deux fois d'affilé (sauf si même cheval pour tous les cavaliers...), puisque celui-ci doit également pouvoir souffler entre deux cavaliers....
Le nombre de participants et chevaux par épreuve peut être assez conséquent. De ce fait, j'aimerai automatisé ce casse tête dont j'ai à faire à chaque concours...
Je vous remercie par avance pour votre aide.
Pas d'algorithme, juste 3 colonnes et 2 tris
Citation:
Envoyé par
maxime_nrgt
Un même couple (cheval/cavalier) ne peut participer qu'une seule fois dans une épreuve. Par contre un cavalier peut concourir plusieurs fois dans une épreuve, et un cheval peut être monté par différents cavaliers dans une même épreuve.
J'ajoute que je ne recherche pas à faire un ordre sur l'ensemble du concours, mais bien sur une des épreuves du concours. La question du temps n'est pas concernée ici.
C'est bien ce que j'avais compris. En fait, une épreuve est un concours avec classement dans le concours (terme générique dans le milieu équestre pour nommer l’évènement). Ce qui est jugé dans une épreuve, c’est la prestation du couple cavalier-cheval.
Pour mes concours administratifs, j'avais été confronté à ce genre de situation. Je devais affecter un N° de place à tous les candidats en tenant compte des lieux d'examens et de leurs lieux d'habitation. J'avais un candidat qui habitait en face de l'un des lieux d'examen. Un ordre alphabétique l'aurait convoqué loin de chez lui, dans un département différent du sien.
Ma démarche pour résoudre cette problématique m'a inspiré cette solution :
1ère étape :
- Affecter un numéro unique à chaque cavalier et à chaque cheval et le même N° ORDRE "1" à toutes les inscriptions.
- trier le tableau sur CHEVAL, CAVALIER
PASSAGE |
INSCRIPTION |
CAVALIER |
CHEVAL |
N° ORDRE |
|
AAAA |
1 |
1 |
1 |
|
AAAA |
1 |
2 |
1 |
|
AAAA |
1 |
3 |
1 |
|
BBBB |
2 |
4 |
1 |
|
CCCC |
3 |
4 |
1 |
|
DDDD |
4 |
4 |
1 |
|
EEEE |
5 |
5 |
1 |
|
EEEE |
5 |
6 |
1 |
|
FFFF |
6 |
7 |
1 |
2ème étape :
- Affecter un N° ORDRE croissant à chaque cavalier montant plusieurs chevaux différents.
- Affecter un N° ORDRE croissant à chaque cheval monté par plusieurs cavaliers différents.
PASSAGE |
INSCRIPTION |
CAVALIER |
CHEVAL |
N° ORDRE |
|
AAAA |
1 |
1 |
1 |
|
AAAA |
1 |
2 |
2 |
|
AAAA |
1 |
3 |
3 |
|
BBBB |
2 |
4 |
1 |
|
CCCC |
3 |
4 |
2 |
|
DDDD |
4 |
4 |
3 |
|
EEEE |
5 |
5 |
1 |
|
EEEE |
5 |
6 |
2 |
|
FFFF |
6 |
7 |
1 |
3ème étape :
- Trier sur N° ORDRE, CAVALIER
PASSAGE |
INSCRIPTION |
CAVALIER |
CHEVAL |
N° ORDRE |
|
AAAA |
1 |
1 |
1 |
|
BBBB |
2 |
4 |
1 |
|
EEEE |
5 |
5 |
1 |
|
FFFF |
6 |
7 |
1 |
|
AAAA |
1 |
2 |
2 |
|
CCCC |
3 |
4 |
2 |
|
EEEE |
5 |
6 |
2 |
|
AAAA |
1 |
3 |
3 |
|
DDDD |
4 |
4 |
3 |
4ème étape :
- Numéroter les PASSAGES en ordre croissant de 1 à n.
PASSAGE |
INSCRIPTION |
CAVALIER |
CHEVAL |
N° ORDRE |
1 |
AAAA |
1 |
1 |
1 |
2 |
BBBB |
2 |
4 |
1 |
3 |
EEEE |
5 |
5 |
1 |
4 |
FFFF |
6 |
7 |
1 |
5 |
AAAA |
1 |
2 |
2 |
6 |
CCCC |
3 |
4 |
2 |
7 |
EEEE |
5 |
6 |
2 |
8 |
AAAA |
1 |
3 |
3 |
9 |
DDDD |
4 |
4 |
3 |
Citation:
Envoyé par
maxime_nrgt
Un cheval ne pourra faire que 3 tours maximum lors du concours et un cavalier 5 tours au maximum sur l'ensemble du concours.
C’est un autre problème qui peut se résoudre au moment des inscriptions avec une feuille Excel spécifique au concours.