Commit Graph

  • ee49b1f637 Fix eval target in Makefile main cdo 2024-07-31 11:27:08 +01:00
  • f142b2127d Make code C89-compliant c89 cdo 2023-03-03 00:23:38 +00:00
  • ad8c0dc9c4 Clear pvals when setting cell cdo 2022-11-26 14:29:44 +00:00
  • 40c12c3458 Use LUT for group indexes instead of calculating on-the-fly cdo 2022-11-26 14:27:12 +00:00
  • 09a9f95740 Detect errors in evaluation program cdo 2022-11-26 02:21:16 +00:00
  • d9c416ffe0 Restructure solver to go cell-by-cell cdo 2022-11-26 02:13:33 +00:00
  • 38ce9d0abb Add step to solve() to check if cells have only one possible value cdo 2022-11-26 01:12:11 +00:00
  • 98a99ac340 Run 8 solving threads in parallel cdo 2022-11-25 00:13:19 +00:00
  • 516c9f5f55 Write program to evaluate results cdo 2022-11-25 00:00:53 +00:00
  • 08924e49d2 Add Makefile rule to extract puzzle solutions cdo 2022-11-24 23:52:08 +00:00
  • 025f6fd408 Statically link binary cdo 2022-11-24 18:54:02 +00:00
  • 3976206679 Generate results file in a portable way cdo 2022-11-24 18:49:30 +00:00
  • a624030558 Mark Makefile as POSIX cdo 2022-11-24 18:17:09 +00:00
  • da89556776 Flesh out readme cdo 2022-11-24 17:30:19 +00:00
  • dc93517909 Add test data files to .gitignore cdo 2022-11-24 17:29:08 +00:00
  • c461bfd0e8 Add profiling output to .gitignore cdo 2022-11-24 17:28:56 +00:00
  • 072c3db45b Save results to file instead of checking puzzles while solving cdo 2022-11-24 13:47:08 +00:00
  • 810ad45669 Add CFLAGS for profiling (commented out) to Makefile cdo 2022-11-24 13:46:35 +00:00
  • 050e770bb9 Add Makefile target to run solver cdo 2022-11-24 13:43:03 +00:00
  • b48f0d6748 Add Makefile target for results file prep cdo 2022-11-24 13:42:40 +00:00
  • 93336c18fb Add target for puzzles pre-processing to Makefile cdo 2022-11-24 13:42:18 +00:00
  • d7394181ba Remove uneeded braces in init() cdo 2022-11-24 12:09:45 +00:00
  • d67f5571a4 Change compilation flags to improve optimization cdo 2022-11-24 01:38:49 +00:00
  • 7c6efa125e Remove uneeded branches in update() cdo 2022-11-24 01:37:40 +00:00
  • 1a84d900f2 Remove assert() from update() cdo 2022-11-24 01:35:44 +00:00
  • f51e9a06b0 Use uint16_t instead of struct for cell state cdo 2022-11-24 00:37:48 +00:00
  • 4a2cfb392f Cast NSUD to double when calculating solved percentage cdo 2022-11-24 00:01:27 +00:00
  • e2838d89e3 Remove gen() function cdo 2022-11-23 23:46:18 +00:00
  • 2ca91dec99 Run puzzles from file in main() cdo 2022-11-23 22:31:58 +00:00
  • 3d7a40cc58 Remove validity check from update() cdo 2022-11-23 22:31:39 +00:00
  • f7d132397f Add filled() function as a faster alternative to check() cdo 2022-11-23 22:18:07 +00:00
  • 9bc49daf4c Add load() for loading sudokus from text cdo 2022-11-23 22:17:38 +00:00
  • 0ca01985cd Add steps to test columns and segments back cdo 2022-11-23 21:41:59 +00:00
  • 5622e2ec9f Remove printing from runbench() cdo 2022-11-23 18:14:20 +00:00
  • 3fa089e4af Pass benchmark results out via pointer cdo 2022-11-23 18:07:21 +00:00
  • 37e7c6481a Make fill proportion a parameter to gen() cdo 2022-11-23 17:56:12 +00:00
  • 71db045c9f Seperate logic in main() into genpuzzles() and runbench() cdo 2022-11-23 17:45:17 +00:00
  • a1c71f8f06 Reduce number of puzzles in benchmark cdo 2022-11-23 17:14:47 +00:00
  • 6ce468bb0d Remove additional newline from seed printout cdo 2022-11-23 17:13:48 +00:00
  • 27d7f3f01b Remove all the indirection cdo 2022-11-23 16:04:23 +00:00
  • 5aea129dc9 Only apply rules to rows cdo 2022-11-23 15:50:20 +00:00
  • 119270c89b Apply rules to segments as well as rows and columns cdo 2022-11-23 15:46:47 +00:00
  • d74b5410b6 Add number of passes to benchmark output cdo 2022-11-23 15:46:21 +00:00
  • 07c1fc7a0f Only report success rate and average time in benchmark summary cdo 2022-11-23 15:23:11 +00:00
  • 14eb8533e6 Add timing to benchmarks cdo 2022-11-23 15:19:06 +00:00
  • ef7f0f0f73 Alter main() to run benchmark instead of single puzzle cdo 2022-11-23 14:38:11 +00:00
  • 39d417f2bc Implement check() function to verify solver results cdo 2022-11-23 14:36:45 +00:00
  • 4feaedf1a3 Create basic, rule-based solver cdo 2022-11-21 19:23:57 +00:00
  • d6b9f3e2e5 Make generator always produce possible puzzles cdo 2022-11-21 19:22:53 +00:00
  • 5ae7a18227 Get seed from /dev/urandom instead of using time(2) cdo 2022-11-21 19:22:02 +00:00
  • 512580ab27 Implement basic generation and printing cdo 2022-11-21 13:01:39 +00:00
  • abc98edac9 Create project skeleton cdo 2022-11-21 11:49:21 +00:00