Parcourir la source

added naive for comparison

master
Thorn Avery il y a 3 ans
Parent
révision
250b891383
3 fichiers modifiés avec 18 ajouts et 0 suppressions
  1. +1
    -0
      .gitignore
  2. BIN
      benchmark.png
  3. +17
    -0
      naiveEgg.hs

+ 1
- 0
.gitignore Voir le fichier

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

BIN
benchmark.png Voir le fichier

Avant Après
Largeur: 367  |  Hauteur: 130  |  Taille: 4.8KB

+ 17
- 0
naiveEgg.hs Voir le fichier

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


Chargement…
Annuler
Enregistrer