added naive for comparison

Tento commit je obsažen v:
Thorn Avery 2021-03-12 15:05:46 +13:00
rodič 448981d4d8
revize 250b891383
3 změnil soubory, kde provedl 18 přidání a 0 odebrání

1
.gitignore vendorováno
Zobrazit soubor

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

binární
benchmark.png Normální soubor

Binární soubor nebyl zobrazen.

Za

Šířka:  |  Výška:  |  Velikost: 4.8 KiB

17
naiveEgg.hs Normální soubor
Zobrazit soubor

@ -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