[英]Choco-solver IntVar declaration : How to declare an IntVar with two(or more) boundedDomain?
IntVar v = model.intVar("v", 1, 12, true);
// or
v= model.intVar("v", 20, 30, true);
我希望 IntVar v 的值不僅在 [1,12] 中,而且在 [20,30] 和其他值段中 [...,...] 我不明白如何使用IntVar 的特定聲明
在 choco-solver 中,您可以定義有界域變量(使用model.intVar(name, lowerBound, upperBound)
)
// domain is [1,7]
IntVar v = model.intVar("v", 1,7);
或枚舉域變量( model.intVar(name, values...)
:
// domain is {1,3,5}
IntVar v = model.intVar("v", new int[]{1,3,5});
因此,如果您要聲明的域是由范圍組成的,那么除了列出所有可能的值之外別無選擇。
// domain is [1,3]U[5,7]
IntVar v = model.intVar("v", new int[]{1,2,3,5,6,7});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.