# https://adventofcode.com/2022/day/2 MOVE_SCORES = { "A": 1, "B": 2, "C": 3, "X": 0, "Y": 3, "Z": 6 } MOVE_BEATS = { "A": "C", "B": "A", "C": "B" } MOVE_LOSES = { "A": "B", "B": "C", "C": "A" } def main(): with open("input2.txt", "r") as file: moves = [line.strip() for line in file.readlines()] # moves = [(x, y) for line in inlines for x, y in line.split(" ")] scores = [] for move in moves: (theirs, mine) = move.split(" ") cur_score = MOVE_SCORES[mine] if mine == "X": # Have to lose. # Add the score of the move that their move beats. cur_score += MOVE_SCORES[MOVE_BEATS[theirs]] elif mine == "Y": # Have to tie. # Add the score of the move that they made. cur_score += MOVE_SCORES[theirs] elif mine == "Z": # Have to win. # Add the score of the move that theirs loses to. cur_score += MOVE_SCORES[MOVE_LOSES[theirs]] scores.append(cur_score) print(sum(scores)) if __name__ == "__main__": main()