CS 463 Program 1
Due at the beginning of class (1pm) on Wednesday,
September 10th.
Consider the Hungarian Rings Puzzle. You will, in the next few assignments,
be asked to program a solver for it. For this assignment, you have
some programming and some problem solving.
Programming
Design and implement data structures for the puzzle itself, and
to randomize the puzzle. The randomize function should take the
dimensions of the puzzle (number of elements on the rings, and number
of elements between the intersections), and the apparent distance
to a solution. There are four actions, which are pairwise inverses;
you should prohibit the randomizer from undoing the action that was
just taken.
To hand in:
- A description in English of your data structure;<\li>
- code for the data structures;
- a description of the randomizer;
- code for the randomizer.
Problem Solving
Come up with at least one heuristic for the puzzle, and explain
both the heuristic and why you believe that that heuristic is
admissable.