Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
27
Task/McNuggets-problem/Haskell/mcnuggets-problem-1.hs
Normal file
27
Task/McNuggets-problem/Haskell/mcnuggets-problem-1.hs
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
import Data.Set (Set, fromList, member)
|
||||
|
||||
------------------------ MCNUGGETS -----------------------
|
||||
|
||||
mcNuggets :: Set Int
|
||||
mcNuggets =
|
||||
let size = enumFromTo 0 . quot 100
|
||||
in fromList $
|
||||
size 6
|
||||
>>= \x ->
|
||||
size 9
|
||||
>>= \y ->
|
||||
size 20
|
||||
>>= \z ->
|
||||
[ v
|
||||
| let v = sum [6 * x, 9 * y, 20 * z],
|
||||
101 > v
|
||||
]
|
||||
|
||||
--------------------------- TEST -------------------------
|
||||
main :: IO ()
|
||||
main =
|
||||
(putStrLn . go) $
|
||||
dropWhile (`member` mcNuggets) [100, 99 .. 1]
|
||||
where
|
||||
go (x : _) = show x
|
||||
go [] = "No unreachable quantities found ..."
|
||||
22
Task/McNuggets-problem/Haskell/mcnuggets-problem-2.hs
Normal file
22
Task/McNuggets-problem/Haskell/mcnuggets-problem-2.hs
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
import Data.Set (Set, fromList, member)
|
||||
|
||||
gaps :: [Int]
|
||||
gaps = dropWhile (`member` mcNuggets) [100,99 .. 1]
|
||||
|
||||
mcNuggets :: Set Int
|
||||
mcNuggets =
|
||||
let size n = [0 .. quot 100 n]
|
||||
in fromList
|
||||
[ v
|
||||
| x <- size 6
|
||||
, y <- size 9
|
||||
, z <- size 20
|
||||
, let v = sum [6 * x, 9 * y, 20 * z]
|
||||
, 101 > v ]
|
||||
|
||||
main :: IO ()
|
||||
main =
|
||||
print $
|
||||
case gaps of
|
||||
x:_ -> show x
|
||||
[] -> "No unreachable quantities found ..."
|
||||
Loading…
Add table
Add a link
Reference in a new issue