Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
10
Task/Anagrams/Haskell/anagrams-1.hs
Normal file
10
Task/Anagrams/Haskell/anagrams-1.hs
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
import Data.List
|
||||
|
||||
groupon f x y = f x == f y
|
||||
|
||||
main = do
|
||||
f <- readFile "./../Puzzels/Rosetta/unixdict.txt"
|
||||
let words = lines f
|
||||
wix = groupBy (groupon fst) . sort $ zip (map sort words) words
|
||||
mxl = maximum $ map length wix
|
||||
mapM_ (print . map snd) . filter ((==mxl).length) $ wix
|
||||
7
Task/Anagrams/Haskell/anagrams-2.hs
Normal file
7
Task/Anagrams/Haskell/anagrams-2.hs
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
*Main> main
|
||||
["abel","able","bale","bela","elba"]
|
||||
["caret","carte","cater","crate","trace"]
|
||||
["angel","angle","galen","glean","lange"]
|
||||
["alger","glare","lager","large","regal"]
|
||||
["elan","lane","lean","lena","neal"]
|
||||
["evil","levi","live","veil","vile"]
|
||||
12
Task/Anagrams/Haskell/anagrams-3.hs
Normal file
12
Task/Anagrams/Haskell/anagrams-3.hs
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
import Data.List (groupBy, maximumBy, sort)
|
||||
import Data.Ord (comparing)
|
||||
import Data.Function (on)
|
||||
import Data.Text (pack)
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
f <- readFile "./unixdict.txt"
|
||||
let ws = groupBy (on (==) fst) (sort (((,) =<< pack . sort) <$> lines f))
|
||||
mapM_
|
||||
(print . fmap snd)
|
||||
(filter ((length (maximumBy (comparing length) ws) ==) . length) ws)
|
||||
Loading…
Add table
Add a link
Reference in a new issue