Advertisement
Guest User

Untitled

a guest
May 26th, 2019
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.47 KB | None | 0 0
  1. solve m n = if m * n == 0
  2. then 1
  3. else solve (m-1) n + solve m (n-1)
  4.  
  5. solve_memoized m n = last r
  6. where
  7. r :: [Int]
  8. r = map f [(i, j) | i <- [0..m], j <- [0..n]]
  9. f (0,_) = 1
  10. f (_,0) = 1
  11. f (i,j) = c (i-1,j) + c (i,j-1)
  12. c (k,l) = r !! (k*(n+1)+l)
  13.  
  14. main = do
  15. print $ solve 2 2
  16. print $ solve_memoized 2 2
  17. print $ solve 3 2
  18. print $ solve_memoized 3 2
  19.  
  20. print $ solve 4 2
  21. print $ solve_memoized 4 2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement