bonjour mes amis
on a un jeu qui consiste sur un tableau de cartes .on a 2 joueurs qui joue a tour de role chacun doit choisir l'un de cartes la plus gauche ou la plus droite et le joueur gagne la valeur de carte .
je veux travailler sur le principe de l'arbre binaire mais je ne veux pas la construire ,je veux ecrire une fonction qui calcule le gain minimal d'un joueur et m'informe sur la direction que je veux choisir (gauche ou droite).la fonction est recursive ,je veux deborder des feuilles en arrivant a la racine.
j'ai ecrit cette structure pour resoudre mon probleme:
je ne sais pas continuer la fonction comment je veux remonter ????
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 typedef struct { char joueur; /* nom du joueur(A ou B)*/ int T[N];/*tableau de cartes*/ int ind_g,ind-d;/*indice de la carte gauche et droite*/ }jeu; int gainA(jeu *j,char *direction) /*fonction qui retourne le gain minimal du joueur A*/ {int g;char d; if(j->ind_g==j->ind_d) /*cas trivial on a un seul carte*/ if(j->joueur=='A') return j->T[ind_g]; return -j->T[ind_g];/*s'il est le tour de B il perd la valeur de la carte*/ .............. }
Partager