Rust solutions for the Advent of Code 2019 puzzles.
I had not written much Rust before attempting these and am using them as a learning exercise, so they should not be taken as the best (or even good) way of tackling these problems.
Basic project setup with simple input file parsing and tests.
Computer with indexed-mode 'add' and 'multiply' instructions.
Look for intersections of 2D lines. Bigger data structures, nested loops.
Simple Finite State Machine, light string manipulation.
Improve Day 2 computer by adding generic IO, comparisons and jumps.
Use multiple Day 5 computers in threads, with their IO being connected accross threads.
Decode and print a binary image. Usage of iterators, chucks_exact
, min_by_key
, among others.
Finish Day 5 computer adding relative loading, 'infinute' memory (hash table based) and larger data types.
N^2 algorithms detecting asteroids blocked by line of sight.
Improve computer IO: create robot with sensors and motors that moves around.
Nested arrays, intensive use of iterators, map and fold.
Use computer with improved IO to automatically play a brickbreaker game. Usage of termion
to handle console.
Use computer to map maze using BFS. Lots of iterators, vectors and enums.