小编Aji*_*ngh的帖子

Haskell和C++之间Coin变化的性能差异

我试图在Haskell中实现Coin Change问​​题.问题如下:

给定一组硬币和这些硬币的无限供应,找到产生特定值所需的最小硬币数量,比如n.

我在haskell中编写了以下程序:

import Data.Vector ((!), generate)
import Control.Applicative
import Control.Monad

coins = [1, 5, 10, 25, 100] :: [Int]

coinchangev :: Int -> [Int] -> Int
coinchangev n cs = v ! n
 where v = generate (n+1) f
       f 0 = 0
       f n = 1 + minimum [v ! x | x <- map (n-) cs, x >= 0]

main :: IO ()
main = do n <- read <$> getLine :: IO Int
           putStrLn . …
Run Code Online (Sandbox Code Playgroud)

comparison performance haskell

6
推荐指数
1
解决办法
500
查看次数

标签 统计

comparison ×1

haskell ×1

performance ×1