where loop 0 xss _ = xss loop n (xs:xss) (y:ys) = loop (n-1) (step (update y xs) xss ys) ys step p [] _ = [p] where go y [] = []
Standard input is empty
[[[5,4,1],[2],[3]],[[4,1],[5,2],[3]],[[4,1],[2],[5,3]],[[5,1],[4,2],[3]],[[1],[5,4,2],[3]],[[1],[4,2],[5,3]],[[5,1],[2],[4,3]],[[1],[5,2],[4,3]],[[1],[2],[5,4,3]],[[5,4],[3,1],[2]],[[4],[5,3,1],[2]],[[4],[3,1],[5,2]],[[5,4],[1],[3,2]],[[4],[5,1],[3,2]],[[4],[1],[5,3,2]],[[5,4],[3],[2,1]],[[4],[5,3],[2,1]],[[4],[3],[5,2,1]],[[5],[4,3,1],[2]],[[5],[3,1],[4,2]],[[5],[4,1],[3,2]],[[5],[1],[4,3,2]],[[5],[4,3],[2,1]],[[5],[3],[4,2,1]],[[5],[4],[3,2,1]]]