assist.hs.txt

来自「Ulm大学2003-2004年竞赛题」· 文本 代码 · 共 22 行

TXT
22
字号
-- Problem   Assistance Required-- Algorithm Recursion-- Runtime   O(n*l(n)) where l(n) is the number of lucky numbers <= n-- Author    Walter Guttmann-- Date      31.12.2001main :: IO ()main =  do input <- readFile "assist.in"     mapM_ solve $ takeWhile (> 0) $ map read $ words inputsolve :: Int -> IO ()solve n = print (lucky [2..] !! (n-1))lucky :: [Int] -> [Int]lucky (x:xs) = x : lucky (removeNth x x xs)removeNth :: Int -> Int -> [a] -> [a]removeNth n 1 (_:xs) = removeNth n n xsremoveNth n k (x:xs) = x : removeNth n (k-1) xs

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?