我想创建一个对的列表cols,和patch.cols会有更多的元素.元素patch将在配对中重复.
例如,
(element-wise-patch '(1 3 5 7 9) '(2 4) '())
([1 2] [3 4] [5 2] [7 4] [9 2])
Run Code Online (Sandbox Code Playgroud)
这是我尝试实现语义.我希望学习更多惯用,更简单的解决方案.
(defn element-wise-patch [cols patch patched]
(if (<= (count cols) (count patch))
(concat patched (map vector cols patch))
(let [[compatible remaining] (split-at (count patch) cols)]
(element-wise-patch remaining patch (concat patched (map vector compatible patch)))))
Run Code Online (Sandbox Code Playgroud)
我觉得可能已经存在构造来进行这样的修补配对.此外,我的描述可能不足以关联类似的解决方案.
请给我一些指针,或者只是帮助我更清楚地定义我的问题.
在此先感谢您的帮助!