Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def AC2(csp):
- q1=queue.Queue()
- q2=queue.Queue()
- for i in range(len(csp.variables)):
- for arc in csp.edges:
- if arc[0]==i:
- if arc[0] > arc[1]:
- q1.put(arc)
- else:
- q2.put(arc)
- while q1.empty()==False:
- while q1.empty()==False:
- arc=q1.get()
- if revise(csp,arc):
- if len(csp.domain[arc[0]]) == 0:
- return False
- for edge in csp.edges:
- if edge[0]<edge[1] and edge[0]<=i and edge[0]!=arc[1]:
- q2.put(edge)
- q1=clone(q2)
- q2=queue.Queue()
- return True
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement