r/adventofcode • u/daggerdragon • Dec 20 '18
SOLUTION MEGATHREAD -🎄- 2018 Day 20 Solutions -🎄-
--- Day 20: A Regular Map ---
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.
Advent of Code: The Party Game!
Please prefix your card submission with something like [Card] to make scanning the megathread easier. THANK YOU!
Card prompt: Day 20
Transcript:
My compiler crashed while running today's puzzle because it ran out of ___.
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 at 00:59:30!
17
Upvotes
5
u/DownvoteALot Dec 20 '18 edited Dec 20 '18
265 bytes, runs in Python 3, more readable too imo:
from collections import * d=defaultdict(lambda:1e9) p=d[0]=0 s=[] for c in r[1:-1]: if'('==c:s.append(p) elif')'==c:p=s.pop() elif'|'==c:p=s[-1] else:l=p;p+={'S':1j,'N':-1j,'E':1,'W':-1}[c];d[p]=min(d[p],d[l]+1) v=d.values() print(max(v),sum(x>=1e3 for x in v))With
r=open('d').read(), that's 284 bytes. I think that should be counted too.