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 |
|
|
| 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 |