diff --git a/wolfsheep.py b/wolfsheep.py index ff8a831..bbe4fc2 100644 --- a/wolfsheep.py +++ b/wolfsheep.py @@ -18,10 +18,11 @@ class Model: class Simulator: invalid_states = [ set({Model.Wolf,Model.Sheep}), set({Model.Sheep, Model.Cabbage}) ] + all_entities = set([Model.Man, Model.Wolf, Model.Sheep, Model.Cabbage]) def simulate(self, state, stack=[]): stack = stack + [state] - if state.right == set([Model.Man,Model.Wolf,Model.Sheep,Model.Cabbage]): + if state.right == Simulator.all_entities: return stack nextStates = [] @@ -49,7 +50,7 @@ class Simulator: if __name__ == "__main__": sim = Simulator() - result = sim.simulate(Model([Model.Man, Model.Wolf, Model.Sheep, Model.Cabbage],[])) + result = sim.simulate(Model(Simulator.all_entities,[])) i = 0 for state in result: print("%d: %s" % (i,state.pretty()))