Pascal's triangle: Difference between revisions

Content added Content deleted
Line 926: Line 926:


A faster version:
A faster version:
<lang>split = filter (/= []) . f
<lang haskell>split = filter (/= []) . f
where f [x] = [[]]
where f [x] = [[]]
f (x:y:xs) = [x, y]:(f (y:xs))
f (x:y:xs) = [x, y]:(f (y:xs))
Line 937: Line 937:


Example:
Example:
<lang>*Main> putStr $ unlines $ map unwords $ map (map show) $ pascal 10
<lang haskell>*Main> putStr $ unlines $ map unwords $ map (map show) $ pascal 10
1
1
1 1
1 1