combntns(例如,eg.combntns(some_vector,i))函数抛出:
错误:未定义功能“combntns”类型的输入参数“双重”
但是,我的机器上需要我为双。它甚至抛出它,如果我投我以INT8。
使用nchoosek代替combnts或combnk的
起初,我认为这是相当困难的查找集的任何尺寸的元件(套1个的元素,2种族元素等),但是然后我意识到,向量元素的任何选择对应于二进制码(”1' ,用于选择元件和‘0’不选择它)。以选择所有可能的元件组合我只需要1至2 ^(1个+长度(V))使用二进制代码 - 1。
起初,我认为这是相当困难的查找集的任何尺寸的元件(套1个的元素,2种族元素等),但是然后我意识到,向量元素的任何选择对应于二进制码(”1' ,用于选择元件和‘0’不选择它)。以选择所有可能的元件组合我只需要1至2 ^(1个+长度(V))使用二进制代码 - 1。
这是为什么不工作在这里吗?
它适用于我的笔记本电脑;
函数IND = subset_sum(v,n)
K = DEC2BIN(0:2 ^长度(v)-1);
b = k。* v;
l =查找(总和(b')== n);
m = k(l,:)。*(1:长度(v));
IND = M(m> 0);
结尾
nchoosek功能是太棒了!
所以显然这一点失败,因为我的空矩阵是
1×0(尺寸0)双
但是测试案例3需要一个空矩阵
0×0(大小0)双
Hmmmm ....
因此很明显,这是失败的,因为我的空矩阵是1×0(0号)双,但测试案例3需要一个空矩阵是0×0(0号)双Hmmmm ....
[随后修改以将测试套件通过解决方案1163376.]
虽然我觉得我应该要休息,多想想....
我真的不明白为什么,没有最后三行,它适用于每个测试,但第三行。
比较输出的大小(...)和没有这些行,您会发现为什么:-)
我究竟做错了什么?如果我在我的电脑上输入代码,我可以为第一个和最后一个案例获得正确的解决方案。万博 尤文图斯我甚至清除了工作空间的所有其他变量。
显然,我是用交叉错。
伟大的解决方案
巧solution.I不能想出来的自己
为什么???
尽管警告,我火上浇油它的工作。
{警告:级联包括用一个空数组
不正确的行数。
这可能不会在将来的版本中被允许的。}
越野车,我的是空的,但与大小,没有得到正确的答案。
4245个求解器
317个议员
如果在不使用任何字符串操作的情况下,则测试如果不使用任何字符串操作
190个求助者
381个求解器
724个求解器