本来就是个很简单的问题。
group :: Int -> [a] ->[[a]]
group n =
let helper l r list = case list of
[] -> l ++ r
h: t -> case l of
[] -> helper r l list
lh: lt -> helper lt ((h: lh): r) t
in helper (replicate n []) []
【 在 AlphaO 的大作中提到: 】
: 可能你原来的问题类型(背包问题)不容易,但这层楼举的例子(总数加起来均分)实在不需要高明算法,直接确定性能算出来。
: 我Assume,原本问题 =(桶不一样大的)N桶水分给5个人,最小单位是桶,怎么均分? 这层楼问题 = N桶水加起来平均分成8碗,一共5个人,每人几碗
:
--
修改:RaZRo FROM 222.131.243.*
FROM 222.131.243.*