負数と正数のシーケンスのリストが与えられた場合、foldr を使用してそれらを負数と正数のシーケンスに分割するにはどうすればよいですか?
たとえば、[1,2,3,-1,-2,-3,1,2,3] [[1,2,3],[-1,-2,-3],[1, 2,3]]
いくつかの疑問
すでに比較した前のパーティションが、現在比較しているパーティションと同じ符号であるかどうかを知るにはどうすればよいですか?
要素をリストに追加するにはどうすればよいですか? [x]:y のようなものを試しましたが、得られたのは各要素をリストとして連結したものであり、結果ではありません。
私が現在持っているのはこれです
foldr (\ x y -> if x >= 0 then [x]:y else y ) [[]]
どちらが間違っていますか
事前に助けてくれてありがとう。