|
@@ -9,6 +9,7 @@ import qualified Data.Set as S
|
|
|
|
|
|
import Data.Universe.Helpers ( cartesianProduct ) -- Need to be installed : `cabal install universe`
|
|
|
|
|
|
+import Data.List ( foldl1' )
|
|
|
|
|
|
-- Types
|
|
|
|
|
@@ -76,6 +77,12 @@ gridMoves m =
|
|
|
matrixSum::Mat -> Mat -> Mat
|
|
|
matrixSum m1 m2 = zipWith (zipWith (+)) m1 m2
|
|
|
|
|
|
+neighbourMap::Grid -> Mat
|
|
|
+neighbourMap g =
|
|
|
+ let Grid cm = g in
|
|
|
+ let m = map (map mineIndic) cm in
|
|
|
+ foldl1' matrixSum (gridMoves m)
|
|
|
+
|
|
|
|
|
|
-- Testing data
|
|
|
|