Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/beling/puzzles

Rust software for solving combination puzzles.
https://github.com/beling/puzzles

15-puzzle 15-puzzle-game 15-puzzle-solver 15puzzle puzzle puzzle-game puzzle-solution puzzle-solver puzzle-solvers puzzles rust rust-lang sliding-puzzle-game solver solvers

Last synced: 17 days ago
JSON representation

Rust software for solving combination puzzles.

Awesome Lists containing this project

README

        

Rust libraries and programs for solving [combination puzzles](https://en.wikipedia.org/wiki/Combination_puzzle), developed by [Piotr Beling](http://pbeling.w8.pl/).

Included libraries:
- `puzzles` ([crate](https://crates.io/crates/puzzles), [doc](https://docs.rs/puzzles)) - solves [combination puzzles](https://en.wikipedia.org/wiki/Combination_puzzle);

Included programs:
- `pdbs_benchmark` ([crate](https://crates.io/crates/pdbs_benchmark), [doc](https://docs.rs/pdbs_benchmark)) - a console program for testing the effectiveness of different pattern database implementations in solving [combination puzzles](https://en.wikipedia.org/wiki/Combination_puzzle).

# Installation
Programs can be compiled and installed from sources. To do this, a Rust compiler is needed.
The easiest way to obtain the compiler along with other necessary tools (like `cargo`) is
to use [rustup](https://www.rust-lang.org/tools/install).

Once Rust is installed, to compile and install a program with native optimizations, just execute:

```RUSTFLAGS="-C target-cpu=native" cargo install ```

for example

```RUSTFLAGS="-C target-cpu=native" cargo install pdbs_benchmark```