結果
問題 | No.258 回転寿司(2) |
ユーザー |
![]() |
提出日時 | 2015-07-31 23:56:46 |
言語 | Haskell (9.10.1) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 777 bytes |
コンパイル時間 | 4,474 ms |
コンパイル使用メモリ | 150,016 KB |
最終ジャッジ日時 | 2024-11-24 09:02:20 |
合計ジャッジ時間 | 4,791 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
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:2:1: error: [GHC-87110] Could not load module ‘Data.Map’. It is a member of the hidden package ‘containers-0.6.8’. Use -v to see a list of the files searched for. | 2 | import qualified Data.Map as Map | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ソースコード
import qualified Data.List as List import qualified Data.Map as Map import Data.Char import Data.Array import Data.Maybe import Control.Monad import Control.Applicative import Text.Printf import System.IO readInt :: String -> Int readInt = read solve [] = (0, []) solve [(x, i)] = (x, [i]) solve vs = let (m, _) = maximum vs in let js = List.findIndices (\(v, _) -> v == m) vs in maximum [ (val, ds) | j <- js , let (v, i) = vs !! j , let vs' = (take (j - 1) vs ++ drop (j + 2) vs) , let (val', ds') = solve vs' , let val = v + val' , let ds = i : ds' ] main = do n <- fmap readInt getLine vs <- fmap (map readInt . words) getLine let (val, ds) = solve (zip vs [0..]) putStrLn $ show val putStrLn $ unwords $ map show $ map (+1) $ List.sort ds