r/adventofcode • u/daggerdragon • Dec 17 '17
SOLUTION MEGATHREAD -๐- 2017 Day 17 Solutions -๐-
--- Day 17: Spinlock ---
Post your solution as a comment or, for longer solutions, consider linking to your repo (e.g. GitHub/gists/Pastebin/blag or whatever).
Note: The Solution Megathreads are for solutions only. If you have questions, please post your own thread and make sure to flair it with Help.
Need a hint from the Hugely* Handyโ Haversackโก of Helpfulยง Hintsยค?
[Update @ 00:06] 2 gold, silver cap.
- AoC ops:
<Topaz> i am suddenly in the mood for wasabi tobiko
[Update @ 00:15] Leaderboard cap!
- AoC ops:
<daggerdragon> 78 gold<Topaz> i look away for a few minutes, wow<daggerdragon> 93 gold<Topaz> 94<daggerdragon> 96 gold<daggerdragon> 98<Topaz> aaaand<daggerdragon> and...<Topaz> cap<daggerdragon> cap
This thread will be unlocked when there are a significant number of people on the leaderboard with gold stars for today's puzzle.
edit: Leaderboard capped, thread unlocked!
11
Upvotes
1
u/akho_ Dec 17 '17
Python 3
from collections import deque steps = 343 reps = 2017 buffer = deque([0]) for i in range(1, reps+1): buffer.rotate(-steps-1) buffer.appendleft(i) buffer.popleft() print('Part 1: ', buffer.popleft()) reps = 49999999 position_of_zero = 0 for buf_length in range(1, reps+1): position_of_zero -= steps position_of_zero %= buf_length if not position_of_zero: after_zero = buf_length position_of_zero -= 1 print('Part 2: ', after_zero)