Submission #764522


Source Code Expand

import qualified Data.Map.Lazy as M

main :: IO ()
main = do
  [h,w] <- fmap read . words <$> getLine
  s <- concat . lines <$> getContents
  let m = M.fromList $ zip [(x,y)| x <- [1..w], y <- [1..h]] s
  let m' = calc ('.','#') m
  if m == calc ('#','.') m' then
    putStrLn "possible" >> (putStrLn . unlines . toList' w $ M.elems m')
  else
    putStrLn "impossible"


calc :: (Char, Char) -> M.Map (Int,Int) Char -> M.Map (Int, Int) Char
calc (w,b) m = M.mapWithKey calc' m
  where
    calc' k _ = change . all (maybe True (== b) . flip M.lookup m) $ around k
    change t = if t then b else w
    around (x,y) = [(x',y')| x' <- [x-1,x,x+1], y' <- [y-1,y,y+1]]

toList' :: Int -> String -> [String]
toList' w = loop
  where
    loop [] = []
    loop xs = (\(a,b) -> a : loop b) $ splitAt w xs

Submission Info

Submission Time
Task D - 画像処理高橋君
User iggg_noob
Language Haskell (GHC 7.10.3)
Score 0
Code Size 823 Byte
Status WA
Exec Time 17 ms
Memory 3196 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 100
Status
AC × 3
AC × 15
WA × 10
Set Name Test Cases
Sample example_0.txt, example_1.txt, example_2.txt
All example_0.txt, example_1.txt, example_2.txt, handmade_0.txt, handmade_1.txt, possible_0.txt, possible_1.txt, possible_2.txt, possible_3.txt, possible_4.txt, possible_5.txt, possible_6.txt, possible_7.txt, possible_8.txt, possible_9.txt, random_0.txt, random_1.txt, random_2.txt, random_3.txt, random_4.txt, random_5.txt, random_6.txt, random_7.txt, random_8.txt, random_9.txt
Case Name Status Exec Time Memory
example_0.txt AC 5 ms 508 KiB
example_1.txt AC 5 ms 508 KiB
example_2.txt AC 5 ms 508 KiB
handmade_0.txt AC 5 ms 508 KiB
handmade_1.txt AC 5 ms 508 KiB
possible_0.txt WA 9 ms 1788 KiB
possible_1.txt WA 12 ms 2172 KiB
possible_2.txt WA 12 ms 2300 KiB
possible_3.txt WA 14 ms 2556 KiB
possible_4.txt WA 9 ms 1404 KiB
possible_5.txt WA 6 ms 636 KiB
possible_6.txt WA 9 ms 1788 KiB
possible_7.txt WA 16 ms 3196 KiB
possible_8.txt WA 14 ms 2684 KiB
possible_9.txt WA 9 ms 1660 KiB
random_0.txt AC 7 ms 1020 KiB
random_1.txt AC 13 ms 2556 KiB
random_2.txt AC 6 ms 892 KiB
random_3.txt AC 6 ms 764 KiB
random_4.txt AC 6 ms 764 KiB
random_5.txt AC 10 ms 1788 KiB
random_6.txt AC 13 ms 2428 KiB
random_7.txt AC 17 ms 3196 KiB
random_8.txt AC 8 ms 1404 KiB
random_9.txt AC 10 ms 1788 KiB