2020aoc/day_1.py

31 lines
884 B
Python

expense_report = []
with open('day1/input') as reader:
expense_report.extend([int(l) for l in reader.readlines()])
expense_report.sort()
def calc_two(sub_set, absolute):
first_i = 0
second_i = len(sub_set) - 1
first = sub_set[first_i]
second = sub_set[second_i]
while first_i < second_i and first + second + absolute != 2020:
if first + second + absolute > 2020:
second_i -= 1
second = sub_set[second_i]
else:
first_i += 1
first = sub_set[first_i]
if first_i < second_i:
return (first, second)
return None
for i in range(len(expense_report) - 1):
res = calc_two(expense_report[i+1:], expense_report[i])
if res is not None:
print(res[0], res[1], expense_report[i])
print(res[0] * res[1] * expense_report[i])
break