要規劃晚餐菜單,用戶需要旋轉3天的肉,然後再進行一次素食主菜。肉的輪換是牛肉,雞肉,魚肉,豬肉。蔬菜旋轉是stirfry,然後豆腐。是否有更好的(更優雅,簡潔或可讀的)生成膳食序列的方式比我下面的要少?如何生成在Clojure中編寫的循環中循環的循環順序
(defn menu [n] (let [meat (cycle '[:beef :chicken :fish :pork])
veg (cycle '[:stirfry :tofu])]
(take n (mapcat seq (interleave (partition 3 meat) (partition 1 veg))))))
這真的很聰明。我喜歡如何添加許多收藏並控制比例,以及如何將菜餚的定義和比例與選擇分開。我對此的動機並非真正的菜餚,而是許多球隊之間分享的一種責任陣容,一些大的,一些小的,我想盡可能減輕他們的負擔。 – sankyo