added naive for comparison
Tento commit je obsažen v:
rodič
448981d4d8
revize
250b891383
1
.gitignore
vendorováno
1
.gitignore
vendorováno
@ -2,3 +2,4 @@
|
||||
*.o
|
||||
*.swp
|
||||
eggdrop
|
||||
neggdrop
|
||||
|
binární
benchmark.png
Normální soubor
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
17
naiveEgg.hs
Normální 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
|
||||
|
Načítá se…
Odkázat v novém úkolu
Zablokovat Uživatele