From cbe440bb0adbfbccfdbbcedb29bf9408c0596866 Mon Sep 17 00:00:00 2001 From: Steven Date: Wed, 29 May 2019 20:06:05 -0400 Subject: Initial repository; needs clean up but it's working so let's not lose it --- .stack-work/intero/intero3815n6a-STAGING.hs | 69 +++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 .stack-work/intero/intero3815n6a-STAGING.hs (limited to '.stack-work/intero/intero3815n6a-STAGING.hs') diff --git a/.stack-work/intero/intero3815n6a-STAGING.hs b/.stack-work/intero/intero3815n6a-STAGING.hs new file mode 100644 index 0000000..5f6fce5 --- /dev/null +++ b/.stack-work/intero/intero3815n6a-STAGING.hs @@ -0,0 +1,69 @@ +module Main where + +import Control.Lens +import Linear.V2 +import Linear.V3 +import Data.Matrix +import System.Random + +data Square = X -- Attacked + | Qu -- Queen + | O -- Open/available + deriving (Show) + + +--board = V3 <$> [0..8] <*> [0..8] <*> [0] +--board = [(r,c,X) | r <- [0..8], c <- [0..8] ] + +lo8 = [0..8] -- list of 8 +initBoard = matrix 8 8 $ \_ -> O + +firstOpen b = let + elem x y = b ! (x, y) + in map + +nextOpen b = + +solve = let board = initBoard + +--avail r c b = + +--rowOccupied r b = any (== Q) $ getRow r b +-- placeQueen r c b = board +-- where +-- fX = (\ _ -> X) +-- rowAttacked = mapRow fX r +-- colAttacked = mapCol fx c +-- queen = setElem Qu (r,c) b + +--placeAll = repeat 8 placeQueen + +winnable = undefined + +nextOpen board = undefined + +solve = undefined + +-- placeQueen r c = + +--b = getE + +--placeQueen r c b = b ^. + +-- rand = do +-- g <- newStdGen +-- print $ take 8 $ (randomRs (0, 8) g) + + +-- try r c = let next b = placeQueen r c b +-- in next initBoard + +-- try' p = let next b = p b +-- in next initBoard + + +--res = [ try x y | x <- lo8, y <- lo8 ] + +main :: IO () +main = do + putStrLn "Hi" -- cgit v1.2.3