首页 > 解决方案 > 如何在 minizinc 中表示元组数组?

问题描述

在 minizinc 中,你可以这样表示一个数组:

var array[size] of type: [x|x in iterable].

我有一个从中提取元组的可迭代对象,如下所示:

var array[size,1..2] of type: [x1,x2|x1,x2 in iterable where x1>x2].

我遇到了语法错误。有什么建议么?

标签: arraysiterableminizinc

解决方案


简短的回答是:Minizinc 中没有元组。长答案是,如果您想对上述 x1 和 x2 进行进一步分析。你可以做:

array[size] of var int:v1= [x1|x1,x2 in iterable where x1>x2].
array[size] of var int:v2= [x2|x1,x2 in iterable where x1>x2].

现在您可以使用两个变量 v1 和 v2。


推荐阅读