Alignements
Écrire une fonction
alignement permettant de détecter des alignements dans une grille.La signature et la documentation de la fonction sont données ci-dessous :
def alignement(grille, taille):
""" Recherche un alignement d'éléments dans une grille (le 1er trouvé)
alignements verticaux, horizontaux et diagonaux
grille: tableau à 2 dimensions (liste de listes) contenant des caractères (ou des chiffres)
taille: entier définissant la taille (longueur) des alignements à rechercher
Renvoie le résultat sous la forme d'une liste des tuples (ligne, colonne) formant l'alignement détecté
"""
Par exemple :
grille = [['o','x',' ','o'],
['o','o','x','o'],
['x','x',' ','x'],
['o','x',' ',' '],
[' ','x','o','o']]
print(alignement(grille, 3))
doit afficher ceci :
[(0,1),(1,2),(2,3)]
Écrire une fonctions
alignements qui renvoie tous les alignements de la grille. Le résultat doit être renvoyé dans un dictionnaire de la forme {élément de la grille : listes d'alignements, ...}, avec alignement de la même forme que précédemment (liste de tuples).Par exemple :
grille = [['o','x','o','o'],
['x','o','x','o'],
['o','x',' ','x'],
['o','x',' ',' '],
[' ','x','o','o']]
print(alignements(grille, 3))
doit afficher ceci :
{'x' : [[(0,1),(1,2),(2,3)], [(2,1),(3,1),(4,1)]],
'o' : [[(2,0),(1,1),(0,2)]] }


