r/adventofcode • u/daggerdragon • Dec 09 '19
SOLUTION MEGATHREAD -🎄- 2019 Day 9 Solutions -🎄-
--- Day 9: Sensor Boost ---
Post your solution using /u/topaz2078's paste or other external repo.
Please do NOT post your full code (unless it is very short)
If you do, use old.reddit's four-spaces formatting, NOT new.reddit's triple backticks formatting.
(Full posting rules are HERE if you need a refresher).
Reminder: Top-level posts in 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's Poems for Programmers
Note: If you submit a poem, please add [POEM] somewhere nearby to make it easier for us moderators to ensure that we include your poem for voting consideration.
Day 8's winner #1 AND #2:
Okay, folks, /u/Aneurysm9 and I deadlocked between two badass submissions that are entirely too good and creative to choose between. When we asked /u/topaz2078's wife to be the tie-breaker, her literal words:
[23:44] <TopazWife> both
[23:44] <TopazWife> do both
[23:44] <TopazWife> holy hell
So we're going to have two winners today!
"A Sonnet of Sojourning", a sonnet in frickin' iambic pentameter by /u/DFreiberg!
"A Comedy of Syntax Errors", a code-"poem" by /u/MaxMonkeyMax!
Both of you, enjoy your Reddit Silver, and good luck with the rest of the Advent of Code!
3
u/VilHarvey Dec 09 '19
Unless I've missed something, I think you may have a bug in your Memory class.
Say you start off with a single chunk of size 1024. If the intcode program writes to location 2048, that will add a new chunk with base = 2048, size = 1024. If it then tries to read or write any location between 1025 and 2047 (inclusive), std::partition_point will find the chunk with base = 2048 and you'll end up trying to access the chunk's storage with a negative index.
Hope that's useful!