【发布时间】:2014-03-02 21:49:18
【问题描述】:
例如:我有一些变量:A,B,C,D 和一个条件:在 [A,B,C,D] 列表中必须有 至少 是数字 2 的两倍. 我只能使用global_cardinality/2 组合约束。
【问题讨论】:
标签: prolog constraint-programming clpfd sicstus-prolog
例如:我有一些变量:A,B,C,D 和一个条件:在 [A,B,C,D] 列表中必须有 至少 是数字 2 的两倍. 我只能使用global_cardinality/2 组合约束。
【问题讨论】:
标签: prolog constraint-programming clpfd sicstus-prolog
好吧,这是一个相当愚蠢的问题。解决方案例如: global_cardinality(VarList, [1-_,2-M]), M >= 2。 所以我们对 VarList 有多少个 1 没有任何限制,但是我们给出了 2 的个数,即 M,让 M 大于 2。
【讨论】: