提出 #9195632


ソースコード 拡げる

import qualified Data.ByteString.Char8 as BS
import           Data.List
import           Data.Maybe

main = do
  str <- BS.getLine
  putStrLn $
    if solve str
      then "YES"
      else "NO"

wordsForParse :: [BS.ByteString]
wordsForParse = map BS.pack ["dream", "dreamer", "erase", "eraser"]

parseTail :: BS.ByteString -> Maybe BS.ByteString
parseTail str = find (`BS.isSuffixOf` str) wordsForParse

solve :: BS.ByteString -> Bool
solve str
  | str == BS.empty = True
  | otherwise =
    case parseTail str of
      Just w  -> solve $ BS.take (BS.length str - BS.length w) str
      Nothing -> False

提出情報

提出日時
問題 ABC049C - 白昼夢
ユーザ ikngtty
言語 Haskell (GHC 7.10.3)
得点 300
コード長 629 Byte
結果 AC
実行時間 3 ms
メモリ 1148 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 300 / 300
結果
AC × 3
AC × 19
セット名 テストケース
Sample subtask0_0.txt, subtask0_1.txt, subtask0_2.txt
All subtask0_0.txt, subtask0_1.txt, subtask0_2.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt
ケース名 結果 実行時間 メモリ
subtask0_0.txt AC 1 ms 380 KiB
subtask0_1.txt AC 1 ms 380 KiB
subtask0_2.txt AC 1 ms 380 KiB
subtask1_0.txt AC 2 ms 1148 KiB
subtask1_1.txt AC 2 ms 1148 KiB
subtask1_10.txt AC 3 ms 1148 KiB
subtask1_11.txt AC 3 ms 1148 KiB
subtask1_12.txt AC 3 ms 1148 KiB
subtask1_13.txt AC 3 ms 1148 KiB
subtask1_14.txt AC 2 ms 1020 KiB
subtask1_15.txt AC 2 ms 1148 KiB
subtask1_2.txt AC 2 ms 764 KiB
subtask1_3.txt AC 3 ms 1148 KiB
subtask1_4.txt AC 3 ms 1148 KiB
subtask1_5.txt AC 3 ms 1148 KiB
subtask1_6.txt AC 3 ms 1148 KiB
subtask1_7.txt AC 3 ms 1148 KiB
subtask1_8.txt AC 3 ms 1148 KiB
subtask1_9.txt AC 3 ms 1148 KiB