// // As NQueens3 but with allDifferent // import java.io.File; import java.io.IOException; import java.util.Scanner; import org.chocosolver.solver.*; import org.chocosolver.solver.variables.*; import org.chocosolver.solver.constraints.*; import org.chocosolver.solver.search.strategy.*; import org.chocosolver.solver.exception.ContradictionException; public class NQueens4 { public static void main(String[] args) { int n = Integer.parseInt(args[0]); Solver solver = new Solver("nqueens.0"); // // q[i] = j <-> there is a queen on column j of row i // IntVar[] q = VF.enumeratedArray("q",n,0,n-1,solver); // // columns constraint, allDifferent! // solver.post(ICF.alldifferent(q)); // // diagonal constraint // for (int i=0;i row i has queen on position j // (1) clique of not equals to // (2) lex variable ordering // (3) first solution //