1

我在 C++ 上使用 Gecode 我有两个长度为 n 的 IntVarArgs 变量,域从 0 到 k

我需要一个约束表达式来计算这两个数组之间的唯一对

如果同一索引上有 3 对值 1、2,我希望约束 count(a, b, {1, 2}, 3) 保持不变,我现在要做的是引入一个名为 classes 的新变量

for (int i = 0; i < n; i++)
{
    classes[i] = expr(*this, a[i] * k + b[i]);
}

其中类变量对于不同的对是不同的,并且在我对其应用计数约束之后,但我觉得应该有一个更好的解决方案

4

0 回答 0