結果
問題 | No.424 立体迷路 |
ユーザー | aimy |
提出日時 | 2017-04-24 15:13:44 |
言語 | Haskell (9.8.2) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 768 bytes |
コンパイル時間 | 1,172 ms |
コンパイル使用メモリ | 148,608 KB |
最終ジャッジ日時 | 2024-07-05 07:14:29 |
合計ジャッジ時間 | 1,507 ms |
ジャッジサーバーID (参考情報) |
judge4 / 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:1:1: error: [GHC-87110] Could not load module ‘Data.Graph’. It is a member of the hidden package ‘containers-0.6.8’. Use -v to see a list of the files searched for. | 1 | import Data.Graph | ^^^^^^^^^^^^^^^^^
ソースコード
import Data.Graph import Data.Char import Data.Bool import Control.Monad idx w x y = x*w + y main = do [h,w] <- map read . words <$> getLine [sx,sy,gx,gy] <- map read . words <$> getLine bs <- map digitToInt . filter isDigit <$> getContents putStrLn (bool "NO" "YES" (maze h w (sx-1) (sy-1) (gx-1) (gy-1) bs)) maze h w sx sy gx gy bs = path g (idx w sx sy) (idx w gx gy) where g = buildG (0,h*w-1) $ do x1 <- [0..h-1] y1 <- [0..w-1] x2 <- [0..h-1] y2 <- [0..w-1] let v1 = idx w x1 y1 let v2 = idx w x2 y2 let d = abs (v1-v2) guard (elem d [1,w] || (elem d [2,2*w] && bs!!v1==bs!!v2 && bs!!(div (v1+v2) 2) < bs!!v1)) guard (if elem d [1,2] then div v1 w == div v2 w else True) guard (abs (bs!!v1 - bs!!v2) <= 1) return (v1,v2)