8
👻 - 2024 DAY 19 SOLUTIONS -👻
(programming.dev)
An unofficial home for the advent of code community on programming.dev!
Advent of Code is an annual Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like.
Solution Threads
M | T | W | T | F | S | S |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 |
Icon base by Lorc under CC BY 3.0 with modifications to add a gradient
console.log('Hello World')
I hadn't really considered that, but yes. I'm inclined to think that replacing hash table lookups with plain array indexing (which this allows) outweighs that downside but I'm not sure. Indeed 120ms is pretty damn fast!
It saved me 20ms, and given your using C, saved you dealing with uthash or similar, so probably worth it.
The hashmap is probably a more generic solution though
Certainly more generic and less prone to user error too. Indeed dealing with hash maps or any advanced data structure is a pain with C, this is where generics or templates really shine, especially if you have control over lifetime aspects as you do with C++ or Rust (e.g. moves, lvalue references, constness, etc).