给定序列OEIS A033581,它是无限序列,则第n个项(0索引)由封闭形式公式6×n 2给出。
您的任务是编写代码,该代码将输出序列中N个第一个数字集合的所有子集,以使子集的总和为一个完美的平方。
规则
N
给出整数作为输入。- 您不能重复使用已在总和中使用的数字。(也就是说,每个数字最多可以出现在每个子集中一次)
- 使用的数字可以是非连续的。
- 以最小的代码获胜。
例
给定的顺序为{0,6,24,54,96,...,15000}
所需的子集之一将是{6,24,294},因为
6+24+294 = 324 = 18^2
您需要找到给定范围内所有可能长度的所有此类集合。
3
好的第一篇文章!您可以考虑添加示例和测试用例。供以后参考,我们提供了一个沙箱,您可以在其中试用您的想法
—
。–
这是否要求我们给定N来计算A033581?还是我不正确地理解这一点?
—
ATaco
@ATaco就像一个序列(1,9,35,39 ...)1 + 9 + 39 = 49一个完美的正方形(使用3个数字),35 + 1 = 36个另一个完美的正方形但使用2个数字。因此{1,35}是必需的集合。
—
prog_SAHIL
@prog_SAHIL在帖子中添加示例以及其他一些示例将是有帮助的:)
—
很有可能
让我们继续聊天中的讨论。
—
prog_SAHIL