rudolphpienaar / cudoko

C++ rewrite of wudoko

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

cudoko

Simple word board solver

Version MIT License ci


 ██████╗██╗   ██╗██████╗  ██████╗ ██╗  ██╗ ██████╗ 
██╔════╝██║   ██║██╔══██╗██╔═══██╗██║ ██╔╝██╔═══██╗
██║     ██║   ██║██║  ██║██║   ██║█████╔╝ ██║   ██║
██║     ██║   ██║██║  ██║██║   ██║██╔═██╗ ██║   ██║
╚██████╗╚██████╔╝██████╔╝╚██████╔╝██║  ██╗╚██████╔╝
 ╚═════╝ ╚═════╝ ╚═════╝  ╚═════╝ ╚═╝  ╚═╝ ╚═════╝ 
                                                   

                - - - - - - - - - - - - -
                - o - - - - o - - - - o -
                - - k - - - k - - - k - -
                - - - o - - o - - o - - -
                - - - - d - d - d - - - -
                - - - - - u u u - - - - -
                - o k o d u c u d o k o -
                - - - - - u u u - - - - -
                - - - - d - d - d - - - -
                - - - o - - o - - o - - -
                - - k - - - k - - - k - -
                - o - - - - o - - - - o -
                - - - - - - - - - - - - -

Abstract

cudoko is C++ rewrite of wudoko to explore the speed improvements of C++ over python.

Notes

This project uses recursion to explore the board solution space. On python, this solution seems extremely slow.

Installation

Using make

From the source root directory simply do:

make

which will build the cudoko executable.

Usage

For a given grid size, and a list of included/excluded words in separate files:

cudoko --gridSize 4x4 --wordInclude wordsInclude.txt --wordExclude wordsExclude.txt

CLI Synopsis

        --gridSize <Rows>x<Cols>
        The size of the board in rows, cols. This is a string and MUST have an 'x'
        separating the <rows> from <cols>, for example "10x7".

        --wordInclude <wordList>
        The file containing the list of words to include.

        [--wordExclude <wordList>]
        The file containing the list of words to exclude.

        [--version]
        If specified, print the version and exit.

        [--man]
        If specified, print a detail man page and exit.

        [--synopsis]
        If specified, print only an overview synposis and exit.

Examples

Watch this space!

-30-

About

C++ rewrite of wudoko


Languages

Language:C++ 97.3%Language:Makefile 2.7%