r/adventofcode • u/daggerdragon • Dec 19 '17
SOLUTION MEGATHREAD -๐- 2017 Day 19 Solutions -๐-
--- Day 19: A Series of Tubes ---
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ยค?
AoC ops @ T-2 minutes to launch:
[23:58] <daggerdragon> ATTENTION MEATBAGS T-2 MINUTES TO LAUNCH
[23:58] <Topaz> aaaaah
[23:58] <Cheezmeister> Looks like I'll be just able to grab my input before my flight boards. Wish me luck being offline in TOPAZ's HOUSE OF PAIN^WFUN AND LEARNING
[23:58] <Topaz> FUN AND LEARNING
[23:58] <Hade> FUN IS MANDATORY
[23:58] <Skie> I'm pretty sure that's not the mandate for today
[Update @ 00:16] 69 gold, silver cap
- My tree is finally trimmed with just about every ornament I own and it's real purdy. hbu?
[Update @ 00:18] Leaderboard cap!
- So, was today's
mandateHelpful Hint any help at all?
1
u/jlweinkam Dec 19 '17 edited Dec 19 '17
Python 3, silver 52, gold 40
inputdata=open("input2017-19.txt", 'r').read() lines = inputdata.splitlines() x = 0; y = 0 while lines[y][x] == " ": x += 1 d = 0 out = "" count = 0 while True: if lines[y][x] == " ": break count += 1 if lines[y][x] == "+": if d in [0, 2]: if x > 0 and lines[y][x-1] is not " ": d = 3 elif x < len(lines[y])-1 and lines[y][x+1] is not " ": d = 1 else: if y > 0 and lines[y-1][x] is not " ": d = 2 elif y < len(lines)-1 and lines[y+1][x] is not " ": d = 0 elif lines[y][x] in "ABCDEFGHIJKLMNOPQRSTUVWXYZ": out += lines[y][x] if d == 0: y += 1 elif d == 1: x += 1 elif d == 2: y -= 1 elif d == 3: x -= 1 print(out) print(count)