我已经找到了一些类似的文章,但是我对编码还是很陌生,以至于我变得更加困惑。我选择了这个项目进行工作,因此,如果有人可以帮助或指出我认为可以最好地为我解释的方向,那将是有帮助的或可以将代码分解为较小的部分。
目标 用户选择介于1-150之间的数字 该代码显示所有数字组合,这些数字的总和等于该数字,但仅使用1-50之间的数字,并且仅使用5位数字。另外,号码只能使用一次。
示例输入为15 输出: 1,2,3,4,5 等于15
如果数字更大,将有更多的输出组合。
一般规则 5个数字组成的数组(只能使用1-50之间的数字 每个号码只能使用一次 必须等于输入 而且没有重复的数组会像1,2,3,4,5 vs 5,1,4,2,3一样好
我正在尝试使用Kotlin或Java编写此代码,但是任何帮助,谢谢!
答案 0 :(得分:0)
有趣的挑战:)
我相信following link可能会有用:
您需要做的就是用您的数组替换数组,等式末尾的值' 10 '(import itertools
numbers = [1, 2, 3, 7, 7, 9, 10, 11, 12, 13, 14, 15, 16]
chosen_number = 15
result = [seq for i in range(len(numbers), 0, -1) for seq in itertools.combinations(numbers, i) if sum(seq) == chosen_number]
print result
)将被您选择的数字替换,如下所示:
>