我有一组号码要核对。如果这个数是偶数,程序将检查它的最大奇数等分器是否相等。例如,如果数字是12,程序将返回一个类似于[3,3,3,3]或36的数组,它将是[9,9,9,9],比如54,[27,27]和56,[7,7,7,7,7,7,7,7,7]等等。我正在用ruby编写代码。我不知道如何写出正确的算法。任何帮助都将不胜感激。

最佳答案

试试这个

def fun(num)
  odd = num
  odd /= 2 while odd.even?
  [odd] * (num / odd)
end

这是怎么工作的?
这将num除以2,直到它是奇数。

关于ruby - 如何编写将偶数除以最大相等的奇数的代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41916196/

10-09 22:52