Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
- type Word = String
- type Label = String
- type Labeled = (,) Label
- type Anagram = (Label, [Word])
- anagrams :: Int -> [Word] -> String
- selectByLength :: Int -> [Word] -> [Word]
- addLabel :: Word -> Labeled Word
- sortByLabel :: [Labeled Word] -> [Labeled Word]
- groupByLabel :: [Labeled Word] -> [Anagram]
- showAnagram :: Anagram -> String
Documentation
anagrams :: Int -> [Word] -> String Source #
anagrams n はアルファベット順の英単語リストを取り,n文字の単語だけをとりだし,文字列を生成する. 結果の文字列を表示するとn文字の単語のアナグラムの一覧となるものとする.
anagrams n = unlines -- 一覧表示 . map showAnagram -- アナグラムを表示 . groupByLabel -- 同一ラベルの単語をグループ化 . sortByLabel -- アナグラムラベルでソート . map addLabel -- アナグラムラベルを単語に追加 . selectByLength n -- n文字の単語だけ選択
showAnagram :: Anagram -> String Source #
未定義