Tiny Steps

Little steps toward a solver.

(This is an experimental section to help people who are not able to make progress based on the original description and class discussion.)

All questions depend on a given SolverData file being loaded. Everything happens with the information from that one SolverData object.

  1. Given a single SolverTrait, return a list of all of the operations that add that trait when they run.

  2. Create a problem that involves only one prereq for each operation. The graph of states should look like this:

     A -> B -> C -> D -> E -> F -> G
    

    Operations are the arrow, so mAB has a prereq of A and adds B, subtracting A. Make the initial state B and the goal state E.

  3. Use your problem to write a function that takes in a list of operations, and puts out a list of the operations that you should use to get from the initial state to the goal state, in order.

  4. Test your function to make sure it still works with the initial state {B, F}.