simulation working

This commit is contained in:
weiss
2020-04-23 09:58:18 +02:00
parent afc2af5cdb
commit aef5584f15
4 changed files with 80 additions and 46 deletions

View File

@@ -1,6 +1,35 @@
module Main where
import Codingame
import Simulation.Board
import Simulation.Data
import Data.Vector as V
main :: IO ()
main = bundle
-- main = test
main = bundle
test :: IO ()
test = print $ Prelude.reverse $ loop1 (0,0) 10 []
loop1 :: Pos -> Int -> [Pos] -> [Pos]
loop1 pos depth acc
| depth == 0 = acc
| otherwise =
let sim = snd $ sim1 pos
acc' = sim : acc
in loop1 sim (depth - 1) acc'
sim1 :: Pos -> (Int, Pos)
sim1 pos = simulate board1 pos (0, 100, singleton (0,4))
board1 :: Board
board1 = fromList $ fmap fromList
[[Air, Air, Air, Air, Air],
[Air, Air, Air, Air, Air],
[Air, Air, Air, Air, Air],
[Air, Air, Air, Air, Air],
[Mine,Air, Air, Mine,Air]]
emptyBoard :: Board
emptyBoard = V.generate 5 (\_ -> V.replicate 5 Air)