Skip to content

Simple C program which calculates all Rubik's cube positions using threads and low memory data structures

License

Notifications You must be signed in to change notification settings

albertodeste/cubecalc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cubecalc

The idea

At our company me and mine collagues share the passion for Rubik’s cube, personally I developed many programs trying to solve the Rubik’s cube when finally we had an idea! Why not to use the knowledge that our company gave us to develop a software that can easilly solve ANY Rubik’s cube? Well, this repository isn’t about solving Rubik’s cube but actually the opposite: calculate all the positions and save the results in a file for future database import. This will become a future software for importing and solving the cube. Stay tuned you’ll see the magic as times goes on ;-)

Actual implementation

Warning
This project is at ALPHA and EXPERIMENTAL level and is not suitable for any kind of production environments (even if the license lets you use it as you prefer).

The software will handle:

  • Fast storage of cube status using a known storage structure based on two arrays monitoring position and orientation of each cubie.

  • Concurrent processing of the positions (at least 18 threads will run simultaneously).

  • Storage management from dedicated thread so each "calculator thread" can focus exclusively on calculating positions.

  • Small solutions file size (10 bytes for each cube should be enough)

This piece of code will be developed with the suggestions (and maybe the help) of my dear friend kevinpirola. This project is available in Java implementation (slower…​ sigh) on his github here

About

Simple C program which calculates all Rubik's cube positions using threads and low memory data structures

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published