-- jys.hs
import Data.Map.Strict (fromListWith, elems)
verticalWriting text offset =
let indexedChars = zipWith (\x y -> (x `mod` offset, [y])) [0..] text
in elems $ fromListWith (\a b -> a ++ "|" ++ b) indexedChars
main = mapM_ putStrLn $ verticalWriting "床前明月光疑是地上霜举头望明月低头思故乡" 5
{-
低|举|疑|床
头|头|是|前
思|望|地|明
故|明|上|月
乡|月|霜|光
-}
趣味编程:静夜思(Haskell版)
最新推荐文章于 2023-04-22 17:35:41 发布