我正在尝试使用 Google OR-Tools 的 CP-Solver 解决问题。是否可以添加这样的约束: x1 XOR x2 XOR 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)])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
554 次 |
| 最近记录: |