Bonsoir , je bloque sur un algorithme je dois calculer le vainqueur de la compétition aux deux épreuves.
— chaque joueur est numéroté de 1 à n
— le résultat d’une épreuve est un tableau de taille n, permutation de l’intervalle [1, n]. Il représente
le classement à l’épreuve : le vainqueur est à l’indice 0, le second à l’indice 1, ...
— le score obtenu par un joueur à une épreuve est son indice dans le tableau résultat. Le score final
d’un joueur est la somme de ses scores aux deux épreuves.
— un joueur j1 est classé avant un joueur j2 si son score final est inférieur à celui de j2, ou bien si
les deux scores sont égaux et j1 est mieux classé que j2 à l’épreuve 1.
Par exemple si et sont les résultats aux deux
épreuves, le score final du joueur 1 est 4+5=9. Le meilleur score est obtenu par les joueurs 4, 5 et 7. Ils ont tous trois le score 4. Le vainqueur est le joueur 5 car il est le mieux classé des trois joueurs à la première épreuve.
J'ai commencé a faire ça sauf que sa me renvoie 5 au lieu de 4 ( et je ne sais pas comment je pourrais renvoyer le joueur le mieux classé) si quelqu'un pourrait m'aider s'il vous plait merci d'avance
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
18 int joueur(int *T1,int n,int *T2){ int vainqueur=0; int vainqueur2=0; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(T1[i]==T2[j]) { vainqueur = vainqueur2; vainqueur2 = (i+j);} if(vainqueur2 <= vainqueur){ vainqueur = vainqueur2;} } } return vainqueur;}
Partager