Skip to content

Commit fc57509

Browse files
committed
Day 1
1 parent b1eb201 commit fc57509

File tree

3 files changed

+1055
-0
lines changed

3 files changed

+1055
-0
lines changed

1.py

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import bisect
2+
3+
def part1():
4+
with open("./input/1", 'r') as f:
5+
lines = f.readlines()
6+
7+
left_list = []
8+
right_list = []
9+
for line in lines:
10+
data = line.split()
11+
bisect.insort(left_list, int(data[0]))
12+
bisect.insort(right_list, int(data[1]))
13+
14+
answer = 0
15+
for left, right in zip(left_list, right_list):
16+
answer += abs(left-right)
17+
print(answer)
18+
return answer
19+
20+
def part2():
21+
with open("./input/1", 'r') as f:
22+
lines = f.readlines()
23+
24+
left_dict = {}
25+
right_dict = {}
26+
for line in lines:
27+
data = line.split()
28+
if data[0] in left_dict:
29+
left_dict[data[0]] += 1
30+
else:
31+
left_dict[data[0]] = 1
32+
33+
if data[1] in right_dict:
34+
right_dict[data[1]] += 1
35+
else:
36+
right_dict[data[1]] = 1
37+
38+
score = 0
39+
for key in left_dict:
40+
if key in right_dict:
41+
data = int(key) * left_dict[key] * right_dict[key]
42+
score += data
43+
44+
print(score)
45+
46+
return
47+
48+
if __name__ == "__main__":
49+
part2()

0 commit comments

Comments
 (0)