目前我有以下使用生成器:
(for i <- 999..100, j <- i..100, into: [], do: i * j)
|> Stream.filter(&(palindromic?(&1)))
|> Enum.sort
|> List.last
有没有办法生成产品流?
答案 0 :(得分:5)
让我们看看我们需要做什么:
生成这种嵌套枚举的最简单方法是生成一个嵌套的列表列表,然后将其展平,或立即使用flat_map
函数:
Stream.flat_map(999..100, fn i -> Stream.map(i..100, fn j -> j * i end) end)