generated from alvesvaren/AoC-template
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path25.py
More file actions
37 lines (29 loc) · 621 Bytes
/
25.py
File metadata and controls
37 lines (29 loc) · 621 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import numpy as np
# reqs = get_input(24).strip().split("\n")
reqs = open("25t.txt").read().strip().splitlines()
snafu = {
"=": -2,
"-": -1,
"0": 0,
"1": 1,
"2": 2
}
num_reqs = []
for req in reqs:
reversed = req[::-1]
num = 0
for i, char in enumerate(reversed):
num += snafu[char] * (5**i)
print(num)
num_reqs.append(num)
dec_sum = np.sum(num_reqs)
print(dec_sum)
snafu_trans = ["0", "1", "2", "=", "-"]
ans = ""
while dec_sum > 0:
num = ((dec_sum + 2) % 5) - 2
dec_sum -= num
dec_sum //= 5
ans += snafu_trans[num]
ans = ans[::-1]
print(ans)