Less lines, better, right?

This commit is contained in:
2022-12-03 11:13:13 +02:00
parent fd0a43d8ff
commit ecb3f23dbe

26
03/c.py
View File

@@ -1,29 +1,21 @@
import os
f = open(os.path.dirname(__file__)+"/input.txt", "r")
rucksacks = open(os.path.dirname(__file__) +
"/input.txt", "r").read().splitlines()
tot = 0
tot2 = 0
tot, tot2 = 0, 0
priorities = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
rucksacks = f.read().splitlines()
f.close()
for data in rucksacks:
left = data[:len(data)//2]
right = data[len(data)//2:]
common = ''.join(set(left) & set(right))
tot += priorities.rfind(common)+1
tot += priorities.rfind(''.join(set(data[:len(data)//2])
& set(data[len(data)//2:])))+1
print("First answer: " + str(tot))
start = 0
end = len(rucksacks)
step = 3
for i in range(start, end, step):
three = rucksacks[i:i+step]
common = ''.join(set(three[0]) & set(three[1]) & set(three[2]))
tot2 += priorities.rfind(common)+1
for i in range(0, len(rucksacks), 3):
three = rucksacks[i:i+3]
tot2 += priorities.rfind(''.join(set(three[0])
& set(three[1]) & set(three[2])))+1
print("Second answer: " + str(tot2))