Problem3: haskell style
Problem3: python style