import Sudoku import Control.Exception import System.Environment import Data.Maybe import Control.Monad.Par main :: IO () main = do [f] <- getArgs grids <- fmap lines $ readFile f print (length (filter isJust (runPar $ parMap solve grids)))