是否可以在OR Tools中为CP解算器模型添加XOR方程约束



我正试图用Google OR Tools的CP Solver解决一个问题。是否可以添加这样的约束:x1异或x2异或x3==0提前谢谢。

n个布尔值的AddBoolXOr表示和为奇数。您可以添加另一个True布尔值。

from ortools.sat.python import cp_model
model = cp_model.CpModel()
solver = cp_model.CpSolver()

a = model.NewBoolVar("")
b = model.NewBoolVar("")
c = model.NewBoolVar("")
model.AddBoolXOr([a, b, c, 1])
solver.Solve(model)
print([solver.Value(x) for x in (a, b, c)])

最新更新