Il existe plusieurs méthodes pour générer la carte. Celle qui a été choisi est la méthode de Kruskal.
On commence par demander la taille du labyrinthe avec le code suivant :
def taille_input():
'''
Détermination de la taille du labyrinthe via un input
Returns
-------
list
renvoie la taille du labyrinthe (nb_lignes, nb_colonnes).
'''
nb_l = max(int(input("Nombre de lignes ?")), 5)
nb_c = max(int(input("Nombre de colonnes ?")), 5)
# le nombre de lignes et de colonnes doit être impaire
if (nb_l % 2 == 0):
nb_l += 1
if (nb_c % 2 == 0):
nb_c += 1
return [nb_l, nb_c]
On lance ensuite la génération de la carte par la méthode de Kruskal, dont voici l'avancé montrée à l'aide des animations ci-dessous.
|
|