674553d29b
Refactor graph classes
...
- Extract base graph logic from WeightedEdgeGraph into new Graph class
- Add LabelGraph to replace old Graph class used by LanParty solver
- Rename WeightedEdgeGraph to WeightGraph and change it to use new Graph class
- Update affected solvers to use new graph classes
2025-06-13 16:43:41 +02:00
f312893ed1
Add solution for "Day 22: Monkey Market", part 2
2025-06-10 21:27:09 +02:00
f025896e84
Add solution for "Day 22: Monkey Market", part 1
2025-06-10 19:46:06 +02:00
83c66682ef
Add solution for "Day 21: Keypad Conundrum", part 2
2025-06-09 18:28:16 +02:00
ab26563e34
Changed the order in Point2::getCardinalDirection() to match static member order
2025-06-05 23:32:44 +02:00
60798118ea
Add solution for "Day 21: Keypad Conundrum", part 1
2025-06-05 23:31:30 +02:00
c67bb9054a
Remove unnecessary iterator use
2025-06-04 23:37:32 +02:00
e1eb8fbe2b
Add solution for "Day 20: Race Condition", part 2
2025-06-04 23:36:07 +02:00
43f1798343
Add solution for "Day 20: Race Condition", part 1
2025-06-03 19:30:43 +02:00
32a239d14a
Removed input paths parameter from public TestContext methods
2025-06-03 19:30:42 +02:00
63745ee91f
Add insertion operator for Grid class
2025-06-03 19:30:41 +02:00
05d627a176
Fix newline at end of file
2025-06-03 19:30:41 +02:00
21e154ed34
Add Lines::findChar() to search for starting points in mazes
2025-06-03 19:30:40 +02:00
2afa527a85
Add solution for "Day 19: Linen Layout", part 2
2025-06-03 19:30:40 +02:00
12fdc184cf
Add solution for "Day 19: Linen Layout", part 1
2025-06-01 23:00:16 +02:00
f8f431b61a
Add solution for "Day 18: RAM Run", part 2
2025-05-25 21:15:11 +02:00
bb1dab33e9
Add solution for "Day 18: RAM Run", part 1
2025-05-22 18:28:47 +02:00
99c31bc0ea
Fix linter messages
2025-05-22 16:13:48 +02:00
0b70db7670
Change long long int to fixed width integer type int64_t
2025-05-22 16:12:56 +02:00
97b61836d8
Add TestContext::runGeneric() template function (and variants)
2025-05-21 20:50:12 +02:00
4b95a250bd
Update the clang format include categories
2025-05-21 20:49:15 +02:00
45ab5f93ec
Add solution for "Day 17: Chronospatial Computer", part 2
2025-05-21 20:34:34 +02:00
5201dcf0bc
Fix day 17 division instruction (it's just a shift)
2025-05-21 20:23:42 +02:00
6d3973bd1e
Add solution for "Day 17: Chronospatial Computer", part 1
2025-05-17 00:05:50 +02:00
09e34b9562
Fix code formatting
2025-05-17 00:04:15 +02:00
fef88ac3fe
Fix copyright dates
2025-05-17 00:03:52 +02:00
7ad1b01879
Change Solver into template class to allow for non-integer results
2025-05-17 00:02:53 +02:00
26dfb379a2
Add solution for "Day 16: Reindeer Maze", part 2
2025-05-14 21:16:14 +02:00
897bab12bf
Change Dijkstra's algorithm to return all shortest distances
2025-05-14 20:53:39 +02:00
73ead5aea7
Add vertex weights and neighbor iterator for WeightedEdgeGraph
2025-05-14 20:51:49 +02:00
911bcf6701
Fix a recently introduced potential bug in day 10 solver
2025-05-14 20:45:24 +02:00
7f0b70c8ef
Moved day 16 graph construction into own method
2025-05-05 19:06:51 +02:00
4302a7b2f7
Fix Dijkstra's Algorithm by exiting early at target vertex
2025-05-05 19:05:02 +02:00
1c860f7e4c
Fix code messages
2025-04-30 20:45:09 +02:00
01c300dce1
Added sub folders for common, extra, and framework code files
2025-04-30 20:37:03 +02:00
08a94ba068
Add solution for "Day 16: Reindeer Maze", part 1
2025-04-30 20:05:51 +02:00
a819caba8b
Add less than operator for Point2
2025-04-30 19:27:28 +02:00
e0cd315909
Add solution for "Day 6: Guard Gallivant", part 2
2025-03-23 16:42:51 +01:00
51b537098d
Add solution for "Day 15: Warehouse Woes", part 2
2025-03-09 16:21:28 +01:00
8e67c19f98
Add TestContext::runPart1() for tests that are only valid for part 1 of a puzzle
2025-03-09 16:00:19 +01:00
047abf9772
Add Lines class to allow LinesSolver to externalize access to its vector of string
2025-03-09 15:59:23 +01:00
02af288ebc
Add solution for "Day 15: Warehouse Woes", part 1
2025-03-04 12:06:16 +01:00
8d75bdfbef
Add solution for "Day 14: Restroom Redoubt", part 2
2025-02-25 20:16:03 +01:00
a75535bab7
Add solution for "Day 14: Restroom Redoubt", part 1
2025-02-19 14:15:34 +01:00
449e33d2a3
Fix code formatting
2025-02-19 11:23:09 +01:00
973f62163d
Add solution for "Day 13: Claw Contraption", part 2
2025-02-18 16:11:29 +01:00
e6a132521b
Fix inconsistent string stream naming
2025-02-18 15:01:43 +01:00
bd5df5d019
Add solution for "Day 13: Claw Contraption", part 1
2025-02-18 15:01:11 +01:00
5b15e36bc5
Add solution for "Day 12: Garden Groups", part 2
2025-02-17 15:23:55 +01:00
f3682a46a9
Add TestContext::runPart2 for tests that are only valid for part 2 of a puzzle
2025-02-17 15:23:05 +01:00