結果

問題 No.233 めぐるはめぐる (3)
コンテスト
ユーザー mazeppa1108
提出日時 2015-06-28 23:34:42
言語 Haskell
(9.14.1)
コンパイル:
ghc -rtsopts -with-rtsopts=-K1G -o a.out -O2 _filename_
実行:
./a.out
結果
MLE  
実行時間 -
コード長 707 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 959 ms
コンパイル使用メモリ 195,840 KB
実行使用メモリ 306,176 KB
最終ジャッジ日時 2026-03-29 11:57:51
合計ジャッジ時間 6,150 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge2_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample -- * 3
other AC * 3 MLE * 2 -- * 6
権限があれば一括ダウンロードができます
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.14.1/environments/default
[1 of 2] Compiling Main             ( Main.hs, Main.o )
Main.hs:13:23: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
   |
13 |       _ -> putStrLn $ head newNames
   |                       ^^^^

[2 of 2] Linking a.out

ソースコード

diff #
raw source code

import Data.List
import Control.Applicative
import Control.Monad

main = do
  n <- readLn
  names <- replicateM n getLine
  let perm1 = permutations "iaaeuu"
      perm2 =  permutations "nbgmr*"
      newNames = map (delete '*') [ins c v | v <- perm1, c <- perm2] \\ names
  case newNames of
      [] -> putStrLn "NO"
      _ -> putStrLn $ head newNames

legal [] = True
legal [charo] = charo `elem` "iaeu" 
legal (charo1 : charo2 : str) = if charo1 `elem` "iaeu"
                                    then legal (charo2 : str)
                                    else charo2 `elem` "iaeu" && legal str

ins [c1, c2, c3, c4, c5, c6] [v1, v2, v3, v4, v5, v6] = [c1, v1, c2, v2, c3, v3, c4, v4, c5, v5, c6, v6] 
0