Przeglądaj źródła

added naive for comparison

master
Thorn Avery 3 lat temu
rodzic
commit
250b891383
3 zmienionych plików z 18 dodań i 0 usunięć
  1. +1
    -0
      .gitignore
  2. BIN
      benchmark.png
  3. +17
    -0
      naiveEgg.hs

+ 1
- 0
.gitignore Wyświetl plik

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

BIN
benchmark.png Wyświetl plik

Przed Po
Szerokość: 367  |  Wysokość: 130  |  Rozmiar: 4.8KB

+ 17
- 0
naiveEgg.hs Wyświetl plik

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


Ładowanie…
Anuluj
Zapisz