結果
問題 |
No.267 トランプソート
|
ユーザー |
|
提出日時 | 2017-04-26 09:59:19 |
言語 | Haskell (9.10.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 733 bytes |
コンパイル時間 | 6,713 ms |
コンパイル使用メモリ | 172,624 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-09-13 13:57:52 |
合計ジャッジ時間 | 7,832 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 RE * 1 |
other | AC * 3 RE * 17 |
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.8.2/environments/default [1 of 2] Compiling Main ( Main.hs, Main.o ) Main.hs:11:15: warning: [GHC-63394] [-Wx-partial] In the use of ‘head’ (imported from Data.List, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 11 | n | head cs == 'A' = 1 | ^^^^ [2 of 2] Linking a.out
ソースコード
import Data.List sortSnd x y | snd x < snd y = LT | otherwise = GT rInt :: String -> Int rInt = read divcards (c:cs) = (c, n) where n | head cs == 'A' = 1 | otherwise = rInt cs isfstChar c x = c == fst x sTupleList :: [(Char, Int)] -> [String] sTupleList [] = [] sTupleList (t:ts) = (fc ++ sc) : sTupleList ts where fc = [fst t] sc | snd t == 1 = "A" | otherwise = show $ snd t main = do getLine cards <- sortBy sortSnd . map divcards . words <$> getLine putStrLn $ unwords $ sTupleList $ (filter (isfstChar 'D') cards) ++ (filter (isfstChar 'C') cards) ++ (filter (isfstChar 'H') cards) ++ (filter (isfstChar 'S') cards)