Re: [問題] 1-9位數不重複印出來

作者: CindyLinz (Cindy Wang)   2016-11-12 16:01:39
Haskell 的例子~
import Control.Monad
import Data.Functor
import Data.List
main = do
l <- read <$> getLine
let
checkLen n = length n <= l
checkNoDup n = length (group (sort n)) == length n
nums = takeWhile checkLen $ filter checkNoDup $ map show [1..]
forM_ nums $ \n -> putStrLn n
其中 checkNoDup 是利用 group 把相同的數字分組,
然後判斷組數和數字個數是不是剛好一樣

Links booklink

Contact Us: admin [ a t ] ucptt.com