Advent of Code Day 17

Advent of Code is about two-thirds done.  Eight more days to go.

## Day 13 – Care Package

Todays challenge was to run a version of Breakout on the int computer. I completed part1 the fastest so far. I got to part 2 and thought I had a bug in my int computer. I went to bed got up the next morning and started debugging the int computer. For the life of me I could not find the bug. I wrote some code to display the run of the codes and memory values. I went through many steps and still could not find the bug. I did figure out how to force it to run the part 2 of the code. It turns out that had I paid attention , that was what I was instructed to do. I did it a little different than the instructions but the effect was the same. Part 2 had you modify the memory location of the 0 location from an add to a multiply. Since I had dug into the code I knew I could get it to run part to by instead changing it to add 1 to location 385. So there was a bug and it was me.

## Day 14 – Space Stoichiometry

Todays challenge required calculating the amount of space ore to create fuel for the spacecraft. I used some recursion to process the data. The second part required finding out how much fuel from 1 trillion ores. I am sure I wrote it last year but I do need to get comfortable with the use of lambda in Python.

## Day 15 – Oxygen System

Today’s challenge uses the intcomputer again. I knew the first step was to map out the maze using the intcomputer. I was getting confused and stuck in a loop, so I consulted Reddit to find out what I was doing wrong. The second part involved using a search algorithm BFS and adding up the steps.

## Day 16 – Flawed Frequency Transmission

Todays challenge was to apply a repeating pattern to given input. Once I stopped confusing myself I was able to complete part with straight forward code. Part 2 was to process the data again using a offset but the input was duplicated 10,000 times. I knew that I could not brute force it. Again I consulted Reddit and found that the answer was to sum up the values to the end in each phase.

## Day 17 Set and Forget

Today’s challenge was to take a grid and add up the X*Y coordinates of the intersection of scaffolding. The second part was to write a routine to figure out the pattern for a robot to traverse the scaffolding. I instead did it manually as I had a printout of the scaffolding. The input into the intcomputer was now ASCII codes. I still had a error in my intcomputer. My input routine was not processing relative postions correctly.