Files
adventOfCode2022/day3/day3.py
2022-12-06 14:03:08 +01:00

47 lines
1.1 KiB
Python

def sameInString(firstHalf, secondHalf):
splitFirst = list(firstHalf)
for i in splitFirst:
if i in secondHalf:
return i
return None
def sameInThreeStrings(first, second, third):
splitFirst = list(first)
for i in splitFirst:
if i in second and i in third:
return i
return None
with open("./day3.txt", "r") as f:
file = f.read()
x = file.split("\n")
prioritySum = 0
for backpack in x:
firstHalf = backpack[:int((len(backpack)/2))]
secondHalf = backpack[int((len(backpack)/2)):]
same = sameInString(firstHalf, secondHalf)
if same is None:
continue
if same.islower():
prioritySum += ord(same)-96
else:
prioritySum += ord(same)-38
print("Priority sum for first is", prioritySum)
prioritySum = 0
for i in range(0, len(x)-1, 3):
backpack1 = x[i]
backpack2 = x[i+1]
backpack3 = x[i+2]
same = sameInThreeStrings(backpack1, backpack2, backpack3)
if same is None:
continue
if same.islower():
prioritySum += ord(same)-96
else:
prioritySum += ord(same)-38