commit 305e20b2f6c6f58c010d47551a2b075019706b92
parent 6160d092340668718e1a0d2f6d43fee6086be5d5
Author: mpizzzle <michael.770211@gmail.com>
Date: Sun, 10 Dec 2017 18:06:49 +0000
minor refactoring
Diffstat:
1 file changed, 12 insertions(+), 17 deletions(-)
diff --git a/puzzle10.py b/puzzle10.py
@@ -5,33 +5,28 @@ with open('files/puzzle10.txt') as f:
puzzle_ascii.extend([17, 31, 73, 47, 23])
my_list = [i for i in range(256)]
-skip, pos = 0, 0
+skip, pos = [0], [0]
-for length in puzzle_input:
- twist = reversed([my_list[i % len(my_list)] for i in range(pos, pos + length)])
- for i, t in zip(range(pos, pos + length), twist):
- my_list[i % len(my_list)] = t
- pos += length + skip
- skip += 1
+def round(this_input, this_list, skip, pos):
+ for length in this_input:
+ twist = reversed([this_list[i % len(this_list)] for i in range(pos[0], pos[0] + length)])
+ for i, t in zip(range(pos[0], pos[0] + length), twist):
+ this_list[i % len(this_list)] = t
+ pos[0] += length + skip[0]
+ skip[0] += 1
+round(puzzle_input, my_list, skip, pos)
print my_list[0] * my_list[1]
my_list = [i for i in range(256)]
-skip, pos = 0, 0
+skip, pos = [0], [0]
for i in range(64):
- for length in puzzle_ascii:
- twist = reversed([my_list[i % len(my_list)] for i in range(pos, pos + length)])
- for i, t in zip(range(pos, pos + length), twist):
- my_list[i % len(my_list)] = t
- pos += length + skip
- skip += 1
-
-blocks = [my_list[i:i + 16] for i in range(0, len(my_list), 16)]
+ round(puzzle_ascii, my_list, skip, pos)
knot_hash = []
-for block in blocks:
+for block in [my_list[i:i + 16] for i in range(0, len(my_list), 16)]:
value = 0
for i in block:
value ^= i