ajout TP3
This commit is contained in:
46
TP1&TP2/compteur/MiniMax_version_AlphaBeta_compteur.java
Normal file
46
TP1&TP2/compteur/MiniMax_version_AlphaBeta_compteur.java
Normal file
@@ -0,0 +1,46 @@
|
||||
public class MiniMax_version_AlphaBeta_compteur {
|
||||
|
||||
public static int compteur_noeud = 0;
|
||||
|
||||
private static int ExploreMax(int nbr_allumettes, int alpha, int beta){
|
||||
compteur_noeud++;
|
||||
if (nbr_allumettes <= 0){
|
||||
return 1;
|
||||
}
|
||||
int localAlpha = alpha;
|
||||
for (int coup = 1; coup <= 3; coup++){
|
||||
int res = ExploreMin(nbr_allumettes - coup, localAlpha, beta);
|
||||
if (res > localAlpha){
|
||||
localAlpha = res;
|
||||
if (localAlpha >= beta){
|
||||
return localAlpha;
|
||||
}
|
||||
}
|
||||
}
|
||||
return localAlpha;
|
||||
}
|
||||
|
||||
private static int ExploreMin(int nbr_allumettes, int alpha, int beta){
|
||||
compteur_noeud++;
|
||||
if (nbr_allumettes <= 0){
|
||||
return -1;
|
||||
}
|
||||
int localBeta = beta;
|
||||
for (int coup = 1; coup <= 3; coup++){
|
||||
int res = ExploreMax(nbr_allumettes - coup, alpha, localBeta);
|
||||
if (res < localBeta){
|
||||
localBeta = res;
|
||||
if (localBeta <= alpha){
|
||||
return localBeta;
|
||||
}
|
||||
}
|
||||
}
|
||||
return localBeta;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
int nbr_allumettes = 31;
|
||||
System.out.println(ExploreMax(nbr_allumettes, Integer.MIN_VALUE, Integer.MAX_VALUE));
|
||||
System.out.println(compteur_noeud);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user