Advent of code

 3 décembre 2022 

  Rucksack Reorganization : Trouver items communs dans sacs à dos
vGFhvGvvSdfwqhqvmCPnlFPnCNPcCF
   
ZbWZDMgsTHsrNNLJcJnsJl
   
HbBWQgZVZZBzbgZphwjqpmmVfdGmjG
   
               
  1. code.py
  2. codeUneLigne.py
def score(caractere):
    if caractere.islower():
        return ord(caractere) - ord('a') + 1
    else:
        return ord(caractere) - ord('A') + 27

f = open("input.txt", 'r')
lines = [line.strip() for line in f.readlines()]

### Partie 1
somme = 0
for line in lines:
    milieu = len(line) // 2
    sac1 = set(line[:milieu])
    sac2 = set(line[milieu:])

    itemCommun = sac1.intersection(sac2)
    if len(itemCommun) == 1:
        somme += score(itemCommun.pop())
    else:
        print("Aaaaaah !")

print("Réponse partie 1:", somme)


### Partie 2
somme = 0
for i in range(0, len(lines), 3):
    troisSacs= map(set, lines[i:i+3])

    commonItems = set.intersection(*troisSacs)
    if len(commonItems) == 1:
        somme += score(commonItems.pop())
    else:
        print("Aaaaaah")


print("Réponse partie 2:", somme)