ソースを参照

added naive for comparison

master
Thorn Avery 3年前
コミット
250b891383
3個のファイルの変更18行の追加0行の削除
  1. +1
    -0
      .gitignore
  2. バイナリ
      benchmark.png
  3. +17
    -0
      naiveEgg.hs

+ 1
- 0
.gitignore ファイルの表示

@@ -2,3 +2,4 @@
*.o
*.swp
eggdrop
neggdrop

バイナリ
benchmark.png ファイルの表示

変更前 変更後
幅: 367  |  高さ: 130  |  サイズ: 4.8KB

+ 17
- 0
naiveEgg.hs ファイルの表示

@@ -0,0 +1,17 @@
eggDrop :: Integer -> Integer -> Integer
eggDrop n k
| k == 1 || k == 0 || n == 1 = k
| otherwise = 1 + (minimum $ map (\i -> f i) [1..k])
where
f i = max (eggDrop (n-1) (i-1)) (eggDrop n (k-i))

-----------------
-- gross io bs --
-----------------

main :: IO ()
main = do
l <- getLine
let (n:k:_) = map read $ words l :: [Integer]
putStrLn $ show $ eggDrop n k


読み込み中…
キャンセル
保存