Files
BUT3-JEU/TP1&TP2/compteur/MiniMax_version_AlphaBeta_compteur.java
James Boutaric b9c926f493 ajout TP3
2025-10-09 10:20:53 +02:00

46 lines
1.4 KiB
Java

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);
}
}