如何使用 ruby 生成数字组合?
我需要使用 ruby 生成数字组合。 例如:
arr = [1,2,3,4,5]
限制是,组合数量应包含数字 5,且长度至少为 3 或以上。 (即 125、521、1245 等)。上述数组元素(值1至5)可以在组合数中出现一次或两次或更多次。
I need to generate the combinations of numbers using ruby.
For Example :
arr = [1,2,3,4,5]
The constraint is, the combination number should include the number 5 and the length is minimum 3 or above. (i.e 125, 521, 1245 etc.. ). The above array elements (values 1 to 5) may occur one or two or more times in the combination number.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
试试这个:
Try this:
[编辑] 函数式方法(需要 Ruby 1.9):
[edit] Functional approach (requires Ruby 1.9):
在这里,我创建了一个临时容器变量 combos,它将存储数组中 3 个或更多数字的每个组合。然后我过滤数组以仅包含包含 5 的组合。
Here I'm creating a temporary container variable combos that will store every combination of 3 or more numbers in the array. I'm then filtering the array to only include combinations containing 5.