查找大小大于元素数的元素组合

问题描述 投票:0回答:1

例如,我有一个保险箱,需要回答长度为5(XXXXX)的数字,但您只使用1,2,3。所以一些连击可能是1,2,3&1,1,1&1,1,2等等...但是我需要找到所有可能性。

我集思广益,我想我需要找到三个数字的所有组合的所有排列,但我不知道如何找到5号的答案。

如果仅是三个数字,答案是长度3,我只能使用置换函数,但这不起作用,因为我需要它的大小大于所用元素的大小。

prolog combinations permutation
1个回答
0
投票

没问题!

?-use_module(library(clpfd))。真正。?-length(Zs,5),Zs ins 1..3,标记([],Zs)。Zs = [1、1、1、1、1]; Zs = [1、1、1、1、2]; Zs = [1、1、1、1、3]; Zs = [1、1、1、2、1]; Zs = [1、1、1、2、2]; Zs = [1、1、1、2、3]; Zs = [1、1、1、3、1]; Zs = [1、1、1、3、2]; Zs = [1、1、1、3、3]; Zs = [1,1,2,1,1]...
© www.soinside.com 2019 - 2024. All rights reserved.