Mise en place de l'opti featherweight

This commit is contained in:
Axel PIETROIS 2024-10-09 14:03:53 +02:00
parent 060a48f121
commit 497e966878
4 changed files with 37 additions and 9 deletions

View File

@ -5,7 +5,14 @@ import fr.iut_fbleau.raw_api_body.entity.Plateau;
public class MainNim { public class MainNim {
public static void main(String[] args) { public static void main(String[] args) {
Plateau p = new PlateauNim(6);
Plateau p = new PlateauNim(5);
System.out.println(MinMax.ExploreMax(p)); System.out.println(MinMax.ExploreMax(p));
} }
} }

View File

@ -9,6 +9,13 @@ public class PlateauNim implements Plateau {
int allumette; int allumette;
Player currrentPlayer; Player currrentPlayer;
Result resultat; Result resultat;
PlyNim j1_1 = new PlyNim(1,Player.JOUEUR1);
PlyNim j1_2 = new PlyNim(2,Player.JOUEUR1);
PlyNim j1_3 = new PlyNim(3,Player.JOUEUR1);
PlyNim j2_1 = new PlyNim(1,Player.JOUEUR2);
PlyNim j2_2 = new PlyNim(2,Player.JOUEUR2);
PlyNim j2_3 = new PlyNim(3,Player.JOUEUR2);
public PlateauNim(int allumette) { public PlateauNim(int allumette) {
this.allumette = allumette; this.allumette = allumette;
@ -37,17 +44,31 @@ public class PlateauNim implements Plateau {
public Iterator<Ply> givePlies() { public Iterator<Ply> givePlies() {
ArrayList<Ply> plies = new ArrayList<Ply>(); ArrayList<Ply> plies = new ArrayList<Ply>();
if (allumette == 1) { if (currrentPlayer == Player.JOUEUR1){
plies.add(new PlyNim(1, currrentPlayer)); if (allumette == 1) {
} else if (allumette == 2) { plies.add(j1_1);
plies.add(new PlyNim(1, currrentPlayer)); } else if (allumette == 2) {
plies.add(new PlyNim(2, currrentPlayer)); plies.add(j1_1);
plies.add(j1_2);
} else {
plies.add(j1_1);
plies.add(j1_2);
plies.add(j1_3);
}
} else { } else {
plies.add(new PlyNim(1, currrentPlayer)); if (allumette == 1) {
plies.add(new PlyNim(2, currrentPlayer)); plies.add(j2_1);
plies.add(new PlyNim(3, currrentPlayer)); } else if (allumette == 2) {
plies.add(j2_1);
plies.add(j2_2);
} else {
plies.add(j2_1);
plies.add(j2_2);
plies.add(j2_3);
}
} }
return plies.iterator(); return plies.iterator();
} }