Removed needless directory
[advent-of-code-16.git] / adventofcode16 / app / advent09.hs
diff --git a/adventofcode16/app/advent09.hs b/adventofcode16/app/advent09.hs
deleted file mode 100644 (file)
index a3ce495..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-module Main(main) where
-
-import Data.List.Split (splitOn)
-import Data.Char (isSpace)
-
-type Chunk = (Int, String)
-
-main :: IO ()
-main = do 
-        textL <- readFile "data/advent09.txt" 
-        let text = filter (not . isSpace) textL
-        part1 text
-        part2 text
-
-part1 :: String -> IO ()
-part1 text = do 
-    print $ cLength $ decompress text
-
-part2 :: String -> IO ()
-part2 text = do 
-    print $ cLength $ decompress2 text
-
-
-decompress :: String -> [Chunk]
-decompress text = 
-    if not (null msuf) 
-        then (1, pre):(num, chunk):drest
-        else [(1, pre)]
-    where 
-        (pre, msuf) = span ('(' /= ) text
-        (marker, suf) = span (')' /= ) msuf
-        ln = splitOn "x" (tail marker)
-        len = read (ln!!0) :: Int
-        num = read (ln!!1) :: Int
-        (chunk, remainder) = splitAt len (tail suf)
-        drest = decompress remainder
-
-decompress2 :: String -> [Chunk]
-decompress2 text = 
-    if not (null msuf) 
-        then [(1, pre)] ++ mulDchunks ++ drest
-        else [(1, pre)]
-    where 
-        (pre, msuf) = span ('(' /= ) text
-        (marker, suf) = span (')' /= ) msuf
-        ln = splitOn "x" (tail marker)
-        len = read (ln!!0) :: Int
-        num = read (ln!!1) :: Int
-        (chunk, remainder) = splitAt len (tail suf)
-        dchunks = decompress2 chunk
-        mulDchunks = [(dl * num, ds) | (dl, ds) <- dchunks]
-        drest = decompress2 remainder
-
-cLength :: [Chunk] -> Int
-cLength = sum . map (clen)
-    where clen (n, t) = n * (length t)
-