Data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 7387c8f97b
commit cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions

View file

@ -0,0 +1,13 @@
import Control.Monad (join)
import Data.List (unfoldr)
isMunchausen :: Integer -> Bool
isMunchausen =
(==)
<*> (sum . map (join (^)) . unfoldr digit)
digit 0 = Nothing
digit n = Just (r, q) where (q, r) = n `divMod` 10
main :: IO ()
main = print $ filter isMunchausen [1 .. 5000]

View file

@ -0,0 +1,9 @@
import Data.Char (digitToInt)
isMunchausen :: Int -> Bool
isMunchausen =
(==)
<*> foldr ((+) . (id >>=) (^) . digitToInt) 0 . show
main :: IO ()
main = print $ filter isMunchausen [1 .. 5000]

View file

@ -0,0 +1,21 @@
import Control.Monad (join)
import Data.Bool (bool)
import Data.List (unfoldr)
import Data.Tuple (swap)
isMunchausen :: Integer -> Bool
isMunchausen =
(==)
<*> ( foldr ((+) . join (^)) 0
. unfoldr
( ( flip bool Nothing
. Just
. swap
. flip quotRem 10
)
<*> (0 ==)
)
)
main :: IO ()
main = print $ filter isMunchausen [1 .. 5000]