warrence
f025896e84
Add solution for "Day 22: Monkey Market", part 1
2025-06-10 19:46:06 +02:00
warrence
83c66682ef
Add solution for "Day 21: Keypad Conundrum", part 2
2025-06-09 18:28:16 +02:00
warrence
ab26563e34
Changed the order in Point2::getCardinalDirection() to match static member order
2025-06-05 23:32:44 +02:00
warrence
60798118ea
Add solution for "Day 21: Keypad Conundrum", part 1
2025-06-05 23:31:30 +02:00
warrence
c67bb9054a
Remove unnecessary iterator use
2025-06-04 23:37:32 +02:00
warrence
e1eb8fbe2b
Add solution for "Day 20: Race Condition", part 2
2025-06-04 23:36:07 +02:00
warrence
43f1798343
Add solution for "Day 20: Race Condition", part 1
2025-06-03 19:30:43 +02:00
warrence
32a239d14a
Removed input paths parameter from public TestContext methods
2025-06-03 19:30:42 +02:00
warrence
63745ee91f
Add insertion operator for Grid class
2025-06-03 19:30:41 +02:00
warrence
05d627a176
Fix newline at end of file
2025-06-03 19:30:41 +02:00
warrence
21e154ed34
Add Lines::findChar() to search for starting points in mazes
2025-06-03 19:30:40 +02:00
warrence
2afa527a85
Add solution for "Day 19: Linen Layout", part 2
2025-06-03 19:30:40 +02:00
warrence
12fdc184cf
Add solution for "Day 19: Linen Layout", part 1
2025-06-01 23:00:16 +02:00
warrence
f8f431b61a
Add solution for "Day 18: RAM Run", part 2
2025-05-25 21:15:11 +02:00
warrence
bb1dab33e9
Add solution for "Day 18: RAM Run", part 1
2025-05-22 18:28:47 +02:00
warrence
99c31bc0ea
Fix linter messages
2025-05-22 16:13:48 +02:00
warrence
0b70db7670
Change long long int to fixed width integer type int64_t
2025-05-22 16:12:56 +02:00
warrence
97b61836d8
Add TestContext::runGeneric() template function (and variants)
2025-05-21 20:50:12 +02:00
warrence
4b95a250bd
Update the clang format include categories
2025-05-21 20:49:15 +02:00
warrence
45ab5f93ec
Add solution for "Day 17: Chronospatial Computer", part 2
2025-05-21 20:34:34 +02:00
warrence
5201dcf0bc
Fix day 17 division instruction (it's just a shift)
2025-05-21 20:23:42 +02:00
warrence
6d3973bd1e
Add solution for "Day 17: Chronospatial Computer", part 1
2025-05-17 00:05:50 +02:00
warrence
09e34b9562
Fix code formatting
2025-05-17 00:04:15 +02:00
warrence
fef88ac3fe
Fix copyright dates
2025-05-17 00:03:52 +02:00
warrence
7ad1b01879
Change Solver into template class to allow for non-integer results
2025-05-17 00:02:53 +02:00
warrence
26dfb379a2
Add solution for "Day 16: Reindeer Maze", part 2
2025-05-14 21:16:14 +02:00
warrence
897bab12bf
Change Dijkstra's algorithm to return all shortest distances
2025-05-14 20:53:39 +02:00
warrence
73ead5aea7
Add vertex weights and neighbor iterator for WeightedEdgeGraph
2025-05-14 20:51:49 +02:00
warrence
911bcf6701
Fix a recently introduced potential bug in day 10 solver
2025-05-14 20:45:24 +02:00
warrence
7f0b70c8ef
Moved day 16 graph construction into own method
2025-05-05 19:06:51 +02:00
warrence
4302a7b2f7
Fix Dijkstra's Algorithm by exiting early at target vertex
2025-05-05 19:05:02 +02:00
warrence
1c860f7e4c
Fix code messages
2025-04-30 20:45:09 +02:00
warrence
01c300dce1
Added sub folders for common, extra, and framework code files
2025-04-30 20:37:03 +02:00
warrence
08a94ba068
Add solution for "Day 16: Reindeer Maze", part 1
2025-04-30 20:05:51 +02:00
warrence
a819caba8b
Add less than operator for Point2
2025-04-30 19:27:28 +02:00
warrence
e0cd315909
Add solution for "Day 6: Guard Gallivant", part 2
2025-03-23 16:42:51 +01:00
warrence
51b537098d
Add solution for "Day 15: Warehouse Woes", part 2
2025-03-09 16:21:28 +01:00
warrence
8e67c19f98
Add TestContext::runPart1() for tests that are only valid for part 1 of a puzzle
2025-03-09 16:00:19 +01:00
warrence
047abf9772
Add Lines class to allow LinesSolver to externalize access to its vector of string
2025-03-09 15:59:23 +01:00
warrence
02af288ebc
Add solution for "Day 15: Warehouse Woes", part 1
2025-03-04 12:06:16 +01:00
warrence
8d75bdfbef
Add solution for "Day 14: Restroom Redoubt", part 2
2025-02-25 20:16:03 +01:00
warrence
a75535bab7
Add solution for "Day 14: Restroom Redoubt", part 1
2025-02-19 14:15:34 +01:00
warrence
449e33d2a3
Fix code formatting
2025-02-19 11:23:09 +01:00
warrence
973f62163d
Add solution for "Day 13: Claw Contraption", part 2
2025-02-18 16:11:29 +01:00
warrence
e6a132521b
Fix inconsistent string stream naming
2025-02-18 15:01:43 +01:00
warrence
bd5df5d019
Add solution for "Day 13: Claw Contraption", part 1
2025-02-18 15:01:11 +01:00
warrence
5b15e36bc5
Add solution for "Day 12: Garden Groups", part 2
2025-02-17 15:23:55 +01:00
warrence
f3682a46a9
Add TestContext::runPart2 for tests that are only valid for part 2 of a puzzle
2025-02-17 15:23:05 +01:00
warrence
ce77b2354c
Change Point2 to use STL arrays for predefined directions
2025-02-17 15:07:20 +01:00
warrence
0718a1285e
Add tests for additional day 12 examples
2025-02-14 18:58:09 +01:00
warrence
ee60c23cfb
Fix implicit cast issues in PrintQueue
2025-02-14 18:38:34 +01:00
warrence
26f40147d2
Remove Solver::getPuzzleTitle() again and do it directly in SolverEngine::run()
2025-02-14 18:24:45 +01:00
warrence
979961d60e
Change Solver puzzle title use and add optional input file name suffix
2025-02-14 17:13:05 +01:00
warrence
28baf4db3e
Add solution for "Day 12: Garden Groups", part 1
2025-02-14 15:47:38 +01:00
warrence
8bea3c2c48
Remove unused includes
2025-02-14 12:03:03 +01:00
warrence
ba3d151e96
Fix readme typos
2025-02-14 11:24:58 +01:00
warrence
d8ae103928
Add solution for "Day 9: Disk Fragmenter", part 2
2025-02-14 11:24:31 +01:00
warrence
648f6d4ebc
Rename LinesSolver::getPosition()/setPosition() to getCharAt()/setCharAt()
2025-02-04 17:50:38 +01:00
warrence
54204766ec
Add solution for "Day 9: Disk Fragmenter", part 1
2025-02-04 17:44:06 +01:00
warrence
e1cd0867cb
Add solution for "Day 8: Resonant Collinearity", part 2
...
The Point2::operator<() was introduced for set<Point2>, which is not actually required.
2025-02-04 17:43:20 +01:00
warrence
44f2a0e0ec
Add solution for "Day 8: Resonant Collinearity", part 1
2025-01-29 22:04:12 +01:00
warrence
c4b2684d66
Add solutions for "Day 7: Bridge Repair"
2025-01-29 09:38:01 +01:00
warrence
9bc4c3e6be
Fix file encodings
2025-01-24 08:57:45 +01:00
warrence
d2e64d2518
Fixed readme links
2025-01-22 20:42:47 +01:00
warrence
21279a97a6
Add solution for "Day 11: Plutonian Pebbles", part 2
2025-01-22 20:38:08 +01:00
warrence
eaee3bd347
Add solution for "Day 11: Plutonian Pebbles", part 1
2025-01-21 14:07:38 +01:00
warrence
7bca5d29d0
Fix operator code formatting
2025-01-21 14:04:21 +01:00
warrence
0f60b23b33
Change constants methods to static constexpr
2025-01-21 14:03:40 +01:00
warrence
0b72b7efdc
Remove raw array use from PrintQueue
2025-01-21 14:02:10 +01:00
warrence
ae99d41cf4
Add Grid::fill()
2025-01-21 14:00:38 +01:00
warrence
ab7aa394dc
Fix constructor code formatting
2025-01-21 13:56:42 +01:00
warrence
22c858dd59
Change clang format line width to 120
2025-01-21 13:54:06 +01:00
warrence
2d63375daa
Fix broken Point2 inequality operator
2025-01-02 17:23:15 +01:00
warrence
5909474603
Update readme
2025-01-01 21:39:31 +01:00
warrence
13a49b6735
Update clang format for templates
2024-12-30 22:32:50 +01:00
warrence
60a952fd5e
Update HoofIt to use Grid
2024-12-30 22:30:32 +01:00
warrence
7aeaab2c49
Add Grid class as wrapper for two-dimensional array
2024-12-30 22:29:14 +01:00
warrence
06afa3ae2e
Fix method order (constants methods first)
2024-12-25 21:44:39 +01:00
warrence
69a4b4becc
Add missing virtual modifiers
2024-12-25 21:43:58 +01:00
warrence
2e2a95faef
Add const to GuardGallivant.getStartDirectionIndex()
2024-12-25 21:43:20 +01:00
warrence
1fd73c1a18
Rename LanParty method to "compute..."
2024-12-25 21:34:13 +01:00
warrence
c777bad38a
Add const for Vertex id and getter
2024-12-25 21:27:27 +01:00
warrence
d314b2fc70
Add const modifier for constants methods
2024-12-25 21:24:20 +01:00
warrence
c783d20755
Add solution for "Day 23: LAN Party", part 1
2024-12-25 21:06:41 +01:00
warrence
e0a9a807da
Fix some private field identifiers
2024-12-24 15:30:14 +01:00
warrence
262a84fa68
Add missing test cases
2024-12-23 19:41:44 +01:00
warrence
f644f6bd42
Enable clang format again and disable AllowShortFuctionOnASinlgeLine
2024-12-23 18:28:12 +01:00
warrence
896d41c561
Update TestContext to simply provide a generic test run and the input path methods
2024-12-23 18:26:03 +01:00
warrence
c85cffb992
Update test cases to test both parts together
...
The test cases for parts 1 and 2 differ only in the tested condition, not in the
tests themselves. This removes the need for derived test context classes.
2024-12-23 18:04:59 +01:00
warrence
73446b2d83
Add TestCaseBase.run() to replace the template
...
The template was not necessary and this now allows for use of custom constructors in the test cases.
2024-12-23 17:53:48 +01:00
warrence
ff454776fa
Add solution for "Day 10: Hoof It", part 2
2024-12-22 22:59:38 +01:00
warrence
eb8f7f7221
Add solution for "Day 10: Hoof It", part 1
2024-12-22 22:43:37 +01:00
warrence
4ed3b84cb6
Fix inheritance formatting
2024-12-11 01:38:26 +01:00
warrence
fa38fa695b
Rename .h file extension to .hpp, and fix some include orderings
2024-12-11 01:37:34 +01:00
warrence
f2126f6c7c
Disable clang format because of constructor bin pack issues
2024-12-11 00:43:14 +01:00
warrence
a4f21371c3
Fix bad unique pointer usage
2024-12-11 00:42:28 +01:00
warrence
2d3b516bbe
Update clang format config
2024-12-10 21:58:58 +01:00
warrence
78d0f59886
Merge branch 'cmake'
2024-12-08 11:00:55 +01:00
warrence
a6ed7bb65b
Add solution for "Day 6: Guard Gallivant", part 1
2024-12-06 23:31:38 +01:00
warrence
5a66669ed8
Add clang format and tidy configs
2024-12-06 22:34:13 +01:00