killer-sudoku-generator
TypeScript icon, indicating that this package has built-in type declarations

1.1.2 • Public • Published

Killer Sudoku Generator

Install

npm i killer-sudoku-generator

Usage

import { 
    generateKillerSudoku, 
    getSeparationsFromAreas,
} from "killer-sudoku-generator";

const sudoku = generateKillerSudoku();

const { puzzle, solution, areas, difficulty } = sudoku;

const { verticalSeparations, horizontalSeparations } = getSeparationsFromAreas(areas);

Details

The function generateKillerSudoku takes an optional parameter difficulty which must be between easy, hard, medium and expert.

You can customize the number of cells each difficulty removes from the full solution with the overrideNumberOfCellsToRemove function like this:

import { 
    generateKillerSudoku, 
    overrideNumberOfCellsToRemove
} from "killer-sudoku-generator";

overrideNumberOfCellsToRemove("easy", 15)

const sudoku = generateKillerSudoku("easy");

By default, the numbers of cells to remove for each difficulty are:

{
    "easy": 30,
    "medium": 40,
    "hard": 50,
    "expert": 60,
}

From experience, above 67 or 68 numbers to remove, the program begins to struggle and is a bit slow and it is possible that it can hang forever above 70.

In an upcoming version, it will just raise an error after a timeout.

Readme

Keywords

Package Sidebar

Install

npm i killer-sudoku-generator

Weekly Downloads

3

Version

1.1.2

License

MIT

Unpacked Size

20.2 kB

Total Files

26

Last publish

Collaborators

  • comanja27