def generateKillerSudokuConstraints(N, killerRules, solverOption):
csolverlb = ps.loadCSolver()
solver = csolverlb.createCCSolver()
+ if solverOption == Solver.ALLOY:
+ csolverlb.setAlloyEncoder(solver)
s1 = [ i for i in range(1, N+1)]
set1 = (c_long* len(s1))(*s1)
s1 = csolverlb.createSet(solver, c_uint(1), set1, c_uint(N))
valid([problem[i + k % root, j + k // root] for k in range(N)])
#Serializing the problem before solving it ....
+ print "Done with encoding ...."
if solverOption == Solver.SERIALISE:
csolverlb.serialize(solver)
- if solverOption == Solver.ALLOY:
- csolverlb.setAlloyEncoder(solver)
+
+ print "start solving the problem ..."
if csolverlb.solve(solver) != 1:
return None
result = [[0 for i in range(N)] for i in range(N)]