Damm algorithm: Difference between revisions
Content added Content deleted
Line 629: | Line 629: | ||
<lang haskell>import Data.Char (ord) |
<lang haskell>import Data.Char (ord) |
||
import Text.Printf (printf) |
import Text.Printf (printf) |
||
table :: [[Int]] |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
]; |
|||
damm :: String -> Bool |
damm :: String -> Bool |
||
damm = (==0) . foldl (\r n -> table !! r !! (ord n - ord '0')) 0 |
damm = (==0) . foldl (\r n -> table !! r !! (ord n - ord '0')) 0 |
||
where |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
] |
|||
main :: IO () |
main :: IO () |