测试多种组合

时间:2017-02-08 19:11:13

标签: java combinations

首先我要说的是,我在网上寻找可能或类似的解决方案,但没有找到任何东西,可能一直在寻找错误的关键词,但请原谅我这个相当简单的问题。

然而,目前我正在尝试实现一个java函数 - 在整数的输入(例如10)上给出了关于如何将其除以2或1的所有可能的解决方案。 而且我根本不知道如何开始,因为它没有任何模式,或者我所做的任何事情都是相关的。

然而,这是我教授的一项旧考试,因此有一个很好的简短解决方案,我只是没有看到。

非常感谢你的帮助和时间:)

编辑:

我试图改变的方法如下:

static void possibilities (int i){ }

我可以给出一个整数(例如3)然后作为输出(通过Sys.out)所有可能的1和2&#s组合,例如3:

(1,1,1)
(2,1)
(1,2)

或2:

(1,1)
(2)

1 个答案:

答案 0 :(得分:2)

以下是我认为可行的方法:

说输入是5所以第一个组合将是:(1,1,1,1,1)对吗?现在我们添加前两个数字,因此它是(2,1,1,1)并将其存储在一个字符串中,即" 2111"现在我们找到了这个字符串的所有排列(代码4,这是可用的),现在我们添加下一个1,1对,所以它看起来像(2,2,1),即" 221"并且同样的排列过程。

我们一直在重复这个,直到字符串只有一个' 1'现在还是没有' 1'现在,尝试检查数字4,同样的事情。