可以說我有一些「事物」,例如7
。如何將一個整數分解爲一個整數數組
但我可以將這些「東西」存儲在最大「2」單位的組中。所以,我需要做的是這樣的:
7 ----> [2, 2, 2, 1]
最明顯的方法,如果簡單地做一個循環遍歷它
def decompose(qty, group_max)
ret = []
while qty > 0
if qty < group_max
ret.push qty
qty = 0
else
ret.push group_max
qty -= group_max
end
end
ret
end
decompose 7, 2
雖然這個工程...這是不是真的ellegant。我想知道如果可能有整數或數組結構中的方法,我可以用它來改善此代碼。
我發現清潔劑做的事情一樣
myarray.map {|x| ... }
,我想知道是否有類似的東西,可能會幫助我與此有關。
這看起來不錯! :) –
謝謝先生:) – Ursus
我不喜歡最後一行,可能有更好的方法。 – Ursus