Submission #172055


Source Code Expand

module Main where

import Control.Applicative
import Control.Monad
import Data.Map (Map)
import Data.Maybe
import qualified Data.Map as M

type Matrix = Map (Row, Col) Int
type Row = Int
type Col = Int

type Memo = Map (Row, Col, Int) Int

convMatrix :: [[Int]] -> Row -> [((Row, Col), Int)]
convMatrix [] _ = []
convMatrix (xs:xss) r = zip [(r, c) | c <- [0..]] xs ++ convMatrix xss (r + 1)

main :: IO ()
main = do
    [r, c, d] <- map read . words <$> getLine
    matrix <- replicateM r $ do
        map read . words <$> getLine
    let matrix' = M.fromList $ convMatrix matrix 0
    print $ solve matrix' (r, c) (0, 0) d

solve :: Matrix -> (Row, Col) -> (Row, Col) -> Int -> Int
solve mat _ (r, c) 0 = fromJust $ M.lookup (r, c) mat
solve mat (mr, mc) (r, c) d = maximum
    $ map (\cell -> solve mat (mr, mc) cell (d - 1))
    $ filter inMatrix [(r - 1, c), (r, c - 1), (r + 1, c), (r, c + 1)]
  where
    inMatrix (r', c')
        | 0 <= r' && r' < mr && 0 <= c' && c' < mc = True
        | otherwise = False

Submission Info

Submission Time
Task B - 謎の人物X
User amutake
Language Haskell (GHC 7.4.1)
Score 0
Code Size 1051 Byte
Status TLE
Exec Time 2069 ms
Memory 280872 KiB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 0 / 60 0 / 40
Status
AC × 2
TLE × 1
AC × 3
TLE × 15
AC × 1
TLE × 29
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
Subtask1 sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt
Subtask2 subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt
Case Name Status Exec Time Memory
sample_01.txt AC 250 ms 1316 KiB
sample_02.txt TLE 2030 ms 2216 KiB
sample_03.txt AC 30 ms 1440 KiB
subtask1_01.txt AC 24 ms 1424 KiB
subtask1_02.txt TLE 2030 ms 2216 KiB
subtask1_03.txt TLE 2029 ms 2340 KiB
subtask1_04.txt TLE 2030 ms 6048 KiB
subtask1_05.txt TLE 2042 ms 2208 KiB
subtask1_06.txt TLE 2031 ms 3496 KiB
subtask1_07.txt TLE 2030 ms 5408 KiB
subtask1_08.txt TLE 2030 ms 4492 KiB
subtask1_09.txt TLE 2032 ms 6084 KiB
subtask1_10.txt TLE 2032 ms 6436 KiB
subtask1_11.txt TLE 2031 ms 6268 KiB
subtask1_12.txt TLE 2030 ms 6436 KiB
subtask1_13.txt TLE 2032 ms 6428 KiB
subtask1_14.txt TLE 2031 ms 6336 KiB
subtask1_15.txt TLE 2031 ms 6436 KiB
subtask2_01.txt TLE 2030 ms 3368 KiB
subtask2_02.txt TLE 2030 ms 3352 KiB
subtask2_03.txt TLE 2048 ms 131364 KiB
subtask2_04.txt TLE 2030 ms 4388 KiB
subtask2_05.txt TLE 2032 ms 18728 KiB
subtask2_06.txt TLE 2038 ms 69920 KiB
subtask2_07.txt TLE 2056 ms 197916 KiB
subtask2_08.txt TLE 2059 ms 280872 KiB
subtask2_09.txt TLE 2067 ms 279848 KiB
subtask2_10.txt TLE 2069 ms 279844 KiB
subtask2_11.txt TLE 2063 ms 238880 KiB
subtask2_12.txt TLE 2064 ms 279772 KiB
subtask2_13.txt TLE 2065 ms 279836 KiB
subtask2_14.txt TLE 2067 ms 279848 KiB
subtask2_15.txt TLE 2064 ms 279836 KiB