Build Status Dependency Status Coverage Status Code Climate Gem Version License

Hanoi Jane

Counting in binary to solve the Towers of Hanoi

Surely there are easier ways to do this?

Yes, there are. This is very much a Solved Problem. However, I was inspired to implement this solution after watching 3 Blue 1 Brown's fascinating video, in which Grant relates the Towers Of Hanoi to the Rhythm Of Counting In Binary:

Screenshot

Running it

bundle
bundle exec rake
bundle exec ./bin/hanoi console

Constrained version

There is a constrained variant of the problem, with the restriction that a disc may only move to an adjacent stack. I've also implemented the solution for this (which maps to the Rhythm Of Counting In Ternary) - you can run this with

hanoi --constrained

pHAT

In order to over-engineer this, I've wrapped a very thin Flask app around the MicroDot pHAT. Try

hanoi phat --phat <address_of_your_pi> --constrained

to watch this all play out on the pHAT:

A post shared by Sam (@pikesley) on