Advent of code

 17 décembre 2022 

  Pyroclastic Flow : Tetris: calculer la hauteur finale d'une chute de pierres
>>><<>>><<<>>>><<>>><<<<>>>><<<>>>><<<>>><<<<>><<><>><<<>>>><<<
  1. codePartie1.py
  2. code.py
  3. amelioration_estLibre.diffy
  4. visualisation.txt
  5. visualisationTerminalCouleurs.png
  6. couleurs.diffy
Amélioration de la fonction estLibre:

· Pas besoin de tester chaque morceau de la pièce pour voir
  si elle tape dans les murs latéraux

· Utilisation de all() au lieu d'une boucle pour tester
  chaque morceau


                                                              > LARGEURS_PIECES = {'-':4, '+':3, 'L':3, 'I':1, 'O':2}

def estLibre(typePierre, px, py, mur):                          def estLibre(typePierre, px, py, mur):   
    for (dx,dy) in PIECES[typePierre]:                        |     if px < 0 or px + LARGEURS_PIECES[typePierre] > NB_COLONN    
        nx = px+dx                                            |         return False
        ny = py+dy                                            |    return all( mur[py+dy][px+dx] == VIDE  for (dx,dy) in PIE 
        if  nx < 0 or nx >= NB_COLONNES  or  mur[ny][nx] != V |
            return False                                      |
    return True                                               |