private List<Variable> getConflictedVariables(Assignment assignment, CSP csp) {
List<Variable> result = new List<Variable>();
foreach (Constraint constraint in csp.getConstraints())
{
if (!constraint.isSatisfiedWith(assignment))
foreach (Variable var in constraint.getScope())
if (!result.contains(var))
result.Add(var);
}
return result;
}