home

Windows program “Sudoku 1.0.1”

Gryf

JaxaSoft

Kris Jaxa
Visby, Sweden
Contact: Kris



SudokuDLXsetup.exe

Puzzle: sudPuzzle.zip
sudPuzzleVHard.zip

Source code: https://bitbucket.org/kjaxa/sudokudlx/src/master/

Program description:

This application is an editor and solver for standard 9×9 Sudoku puzzles, for 64-bit Windows.

“SudokuDLX.zip” contains all files needed to run the application.

Hardest Sudoku Puzzles in my collection:

6....894.9....61...7..4....2..61..........2...89..2.......6...5.......3.8....16.. , (21207 backtraks)

This is a screenshot of the program in light theme, showing a very hard puzzle:

Sudoku: screen dump

Installation:
Run SudokuDLXsetup.exe and follow the instructions. The installer will create a folder named "SudokuDLX" in the "Program Files" folder and extract all files there. It will also create a desktop shortcut to SudokuDLX.exe.

Uninstallation:
Uninstall the program using "Add or Remove Programs" in Windows. The uninstaller will remove all files and shortcuts created by the installer. If you have saved any puzzles, they will not be deleted, but you may want to back them up before uninstalling, just in case. After uninstalling, you can also manually delete any remaining files or folders related to SudokuDLX, if necessary.

SHA-256 checksum for SudokuDLXsetup.exe:

146a1f63bb18f926dcf7033460f20f62918ca383fdb37c1602fcc67f0e4148c1

After downloading the file, if you are concerned that it may have been tampered with, check its SHA-256 checksum. online https://emn178.github.io/online-tools/sha256_checksum.html.
The checksum you calculate must be identical to the value above.

Terms of Use:

The program is free, and no registration is required. If you distribute the program, you must keep the copyright notice: Copyright © 2026 Kris Jaxa.

Sudoku samples and a little philosophy

It seems that, when solving Sudoku puzzles on a computer, one can choose between two approaches:

  1. compress the data as much as possible for fast processing or
  2. create a table of all possible placements and choose the solution using an exact-cover algorithm[2].
    It is definitely not how humans think, but there is a very efficient algorithm: DLX[3] (Dancing Links). It solves the hardest Sudoku in less than 1 ms (0.001 s).
    So the time to show the solution is much longer than the time needed to solve the puzzle.

The app uses both of them, the fast "Dancing Links" library serves the full solution (or reports that there is no solution, or that the puzzle may have multiple solutions.). The other library deduces possible values from the given clues.

I think ChatGPT is a very useful programming and help tool, especially together with Codex. I have also tried Claude Code, GitHub Copilot, and Gemini in Google AI Mode. In my experience, ChatGPT works best for me, although I am only a hobby programmer and started using AI tools recently.

Determining puzzle difficulty automatically is difficult, because it solves a puzzle differently than human. The app takes number of backtracks as a measure. A backtrack occurs when the algorithm makes a guess that later proves wrong, so it must go back and try another possibility.

Difficulty classification:

Very Easy
backtracks = 0 and the puzzle can be solved by basic logical operations
Easy
backtracks < 70
Medium
backtracks < 205
Hard
backtracks < 605
Very hard
backtracks ≥ 605


Here are some Sudoku puzzles in a ZIP file. They are all 81-character text files with digit 1, 2, 3, 4, 5, 6, 7, 8, 9 and a dot represents an empty cell.

SudokuDLX can read such files, both as one 81-character string and in 9×9 form. Empty cell can be dot '.', the digit zero '0' or underscore '_'.

Example:

000000001000001023004000000000003000010000005600040700003000080005700400020000000
........1.....1.23..4...........3....1......56...4.7....3....8...57..4...2.......
________1_____1_23__4___________3____1______56___4_7____3____8___57__4___2_______

9-row variants are also accepted..

........1
.....1.23
..4......
.....3...
.1......5
6...4.7..
..3....8.
..57..4..
.2.......

The file name contains the number of backtracks. For example, the puzzle named bt0445.sud requires 445 backtracks and is classified as Hard.

I just checked the file with 49151 Sudoku puzzles[5], and found several puzzles that require more backtracks than the hardest puzzle in my collection, which was bt3539.sud. The hardest puzzle I found is now bt15641.sud, which requires 15,641 backtracks.

The new puzzles (very hard) 3775 - 15641 number of backtracks are included in the "sudPuzzleVHard.zip" ZIP file.

This is the hardest Sudoku puzzle I currently know (not yet in zip files), 21207 backtracks:

6....894.9....61...7..4....2..61..........2...89..2.......6...5.......3.8....16..
Please inform me if you find a harder puzzle(s), and I will add it(them) to the collection.

External links
  1. Sudoku - Wikipedia
  2. Exact cover - Wikipedia
  3. D. Knuth Dancing Links
  4. LeetCode Solutions. My code C++ library is based on the code from the repository. Note that ChatGPT had found and corrected some issues, so the algorithm runs about 10 times faster than the original.
  5. 49151 rows file with puzzles (17 clues)
home