◂ 3 décembre 2022 ▸
Rucksack Reorganization : Trouver items communs dans sacs à dos
vGFhvGvvSdfwqhqvmCPnlFPnCNPcCF …
ZbWZDMgsTHsrNNLJcJnsJl
HbBWQgZVZZBzbgZphwjqpmmVfdGmjG …
⋮
- code.py
- codeUneLigne.py
### Code en une ligne pour la partie 2
print(sum( (lambda c: ord(c.lower()) - ord('a') + (c.islower() and 1 or 27))(set.intersection(*troisSacs).pop()) for troisSacs in zip(*[(set(line.strip()) for line in open("input.txt", "r").readlines())]*3) ) )
#### Plus détaillé :
sacs = [set(line.strip()) for line in open("input.txt", "r").readlines()] # sacs = map(set, map(str.strip, open("input.txt", "r").readlines()))
trios = zip(*[iter(sacs)]*3) # hack de la doc Python
itemsCommuns = [set.intersection(*troisSacs).pop() for troisSacs in trios]
valeurs = [ord(c.lower()) - ord('a') + (c.islower() and 1 or 27) for c in itemsCommuns]
reponse = sum(valeurs)