diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2022-11-28 00:32:36 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-28 00:32:36 +0000 |
| commit | f10eab2bf79daf545e7e5fd59bd2920d4a405fbf (patch) | |
| tree | f0154367177590e75abd9cb56f5498f3d64b7dcf | |
| parent | 15260d6d9a577276521648a1cbe08a5a142cb0cf (diff) | |
| parent | aa6b81c66b415a87d438d6f8c5f4ea857e0b69e0 (diff) | |
| download | perlweeklychallenge-club-f10eab2bf79daf545e7e5fd59bd2920d4a405fbf.tar.gz perlweeklychallenge-club-f10eab2bf79daf545e7e5fd59bd2920d4a405fbf.tar.bz2 perlweeklychallenge-club-f10eab2bf79daf545e7e5fd59bd2920d4a405fbf.zip | |
Merge pull request #7163 from ccntrq/challenge-192
Challenge 192
| -rw-r--r-- | challenge-192/alexander-pankoff/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-192/alexander-pankoff/haskell/ch-2.hs | 9 |
2 files changed, 8 insertions, 2 deletions
diff --git a/challenge-192/alexander-pankoff/blog.txt b/challenge-192/alexander-pankoff/blog.txt new file mode 100644 index 0000000000..5e3c5269c8 --- /dev/null +++ b/challenge-192/alexander-pankoff/blog.txt @@ -0,0 +1 @@ +https://pankoff.net/pages/perl-weekly-challenge/challenge-192.html
\ No newline at end of file diff --git a/challenge-192/alexander-pankoff/haskell/ch-2.hs b/challenge-192/alexander-pankoff/haskell/ch-2.hs index c436550291..c0d023a906 100755 --- a/challenge-192/alexander-pankoff/haskell/ch-2.hs +++ b/challenge-192/alexander-pankoff/haskell/ch-2.hs @@ -4,6 +4,7 @@ module Main where import Test.HUnit import Data.List (singleton) +import GHC.Natural (Natural) main = runTestTT $ TestList @@ -18,12 +19,16 @@ main = runTestTT (Just 0) (equalDistribution $ singleton 4)] -equalDistribution :: [Int] -> Maybe Int +equalDistribution :: [Int] -> Maybe Natural equalDistribution [] = Just 0 equalDistribution xs = let total = sum xs target = total `div` length xs isDistributable = total `mod` length xs == 0 in if isDistributable - then Just $ sum $ map abs $ scanl (\a b -> a + b - target) 0 xs + then Just + $ fromIntegral + $ sum + $ map abs + $ scanl (\a b -> a + b - target) 0 xs else Nothing
\ No newline at end of file |
