adventofcode2022/day03/day03-p2.py

47 lines
1.2 KiB
Python

#!/usr/bin/env python3
rucksack_items = [
"vJrwpWtwJgWrhcsFMMfFFhFp",
"jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL",
"PmmdzqPrVvPwwTWBwg",
"wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn",
"ttgJtRGJQctTZtZT",
"CrZsJsPPZsGzwwsLwLmpwMDw" ]
def groups_badge ( items ):
badge_item = set(items[0]).intersection(items[1], items[2])
return next(iter(badge_item))
def item_priority( item ):
if item.isupper():
return (ord(item) - 38)
else:
return (ord(item) - 96)
if __name__ == "__main__":
print("Part 2")
index = 0
rl = len(rucksack_items)
sum = 0
while ( index < rl):
badge = (groups_badge(rucksack_items[index:(index+3)]))
badge_priority = item_priority(badge)
sum += badge_priority
print("%s has priority %s" % (badge, badge_priority))
index += 3
print("Sum of the priorities is %s" % sum)
file = open("input","r")
lines = file.readlines()
index = 0
rl = len(lines)
sum = 0
while ( index < rl):
three_lines = list(map(str.strip, lines[index:(index+3)]))
badge = groups_badge(three_lines)
badge_priority = item_priority(badge)
sum += badge_priority
index += 3
print("Sum of the priorities is %s" % sum)